Sunday, May 17, 2009 5:43 PM
Discoveries This Week 05/17/2009
A bit of a slow week. Perhaps some are out playing in the recently fantastic weather instead of blogging about functional programming. My favorites this week were Paul Hudak’s talk on Haskell, Jason Olson’s Channel9 discussion, Niklas Gustafssons’s Actors in F# and Kurt Schelfthout’s Testing DSLs with FsCheck.
Paul Hudak on InfoQ - Haskell
An interview that begins with a discussion of when to introduce difficult Haskell concepts like monads, moves to a discussion of the philosophy of higher order programming.
Paul Hudak, as a principal designer of Haskell, explains FP topics with a passion few others could. Also, I’m curious about this idea of arrows (Freyd-categories) as opposed to monads.
We talk about his [Lang.NET F# and OO] presentations and his perspectives on object orientation, F# and his own language.
As it seems impossible to pin down exactly what OO is, perhaps we should try to categorize it’s subcomponents across different languages.
One of the advantages of this model over the Axum model is that any number of clients can communicate with an actor, all that is needed is access to the mailbox reference.
I must beg to differ with Niklas on one of his stated disadvantages of the Actor model. It would be easy enough to include a “closing down state” in your Actor FSA. The inability to statically check your agreements is correct though. I’d be interested in seeing a simple Axum sample which could handle N clients and still be statically checked.
It occurred to me that (domain specific) languages seem difficult to test using traditional unit tests: after all, the usage possibilities are far greater for a language than for, say, a typical user interface.
An extremely clever way to test DSLs.
I understand it is exceedingly painful to sign up for an account to leave a simple comment. That given, I am still trying to figure out a solution to my spam problem. For now, if you would like to comment and don’t wish to set up an account, please email me your comment and I will manually post it here.