
29 Jun
2007
29 Jun
'07
10:59 a.m.
Dave Bayer wrote:
[...] In the Haskell do expression, every line is equally special, and type information is used to combine the lines, inserting implied combinators.[...]
Desugaring do-notation is a syntactic transformation, requiring no type information. (In practice, the parts may be required to have a monadic type, but this is only to get an earlier (hence better) error message, I guess.)
I see potential for a whole language that worked this way, opened up to let the programmers control this process without waiting for an implementation to take their suggestions (think history of arrows) piecemeal.
How would you propose to specify such transformations? Greetings, Arie