Haskell Web-development scene

Jun 27, 2010 21:57


After reading about open recursion one night I was laying in my bed trying to get some sleep.

What I was thinking of was Web-development in Haskell. Michael Snoyman put a lot of his time and effort into Yesod framework. Snap made it's way into the haskell ecosystem.

I'm very close to Michael in his view of main challenges of Web-development.Read more... )

haskell, web, development

Leave a comment

Comments 5

thesz June 27 2010, 19:38:42 UTC
What is all that fuzz about finally tagless?

I really don't get.

Reply

asviraspossible June 27 2010, 21:24:10 UTC
Finally-tagless is cool 'cause it solves the expression problem in very very very simple way (see comments here http://wadler.blogspot.com/2008/02/data-types-la-carte.html) and allows to create very efficient (by means of execution time) embedded DSLs (original finally-tagless paper).

Reply

thesz June 27 2010, 21:28:59 UTC
I read the original paper and I didn't find the place the alleged effectiveness come from.

Oleg's paper trades one kind of tagging (constructor tags) for another one (class dictionary) to solve expression problem. And the second one is much more dynamic than the first.

Reply


everything type safe? anonymous June 27 2010, 23:37:03 UTC
One thing I don't like about the yesod approach is that the persistence layer seems to require that you only use special types which can be easily stored in SQL, etc. So even though I am working in Haskell, I don't actually get to use real Haskell types or do queries using the full power of Haskell. Since the types it allows are limited, it seems like you won't be able to express the same level of type safety that you can with normal Haskell types?

The happstack-state approach seems nice because you do get to use almost any Haskell datatype (basically anything you could in theory write read/show instances for, so no functions, etc). And your queries can use the full expressive power of Haskell as well (they just have to be pure, ie. no IO monad stuff).

Reply

Re: everything type safe? asviraspossible June 28 2010, 04:34:20 UTC
You can manually instantiate Yesod type-classes to get persistence working for some type. And you can use happstack-state on top of Yesod controller. I don't like Yesod, I just expressed my commitment to type-safety.

Reply


Leave a comment

Up