[Haskell-cafe] monad subexpressions
ndmitchell at gmail.com
Thu Aug 2 20:56:09 EDT 2007
> I've heard Simon (Peyton-Jones) twice now mention the desire to be able
> to embed a monadic subexpression into a monad.
I think this is a fantastic idea, please do so!
> $( expr ) -- conflicts with template haskell
> ( <- expr ) -- makes sense, and I think it's unambiguous
> Other ideas:
> ``expr`` -- back-ticks make sense for UNIX shell scripters
> (| expr |) -- I don't think anything uses this yet
This final (| one |) looks way too much like template haskell, it has
the feel of template haskell, even if it isn't yet in the syntax. Your
(<- proposal) feels a bit like an operator section - I'm not sure if
that is a good thing or a bad thing, but for some reason feels
slightly clunky and high-syntax overhead, perhaps because of the
inevitable space between the <- and expr, and that ()<- are all fairly
high semantic value currently in Haskell, while this extension should
blend in, rather than stand out. The `` syntax is clever, and I like
it, but I worry that its quite a long way from the current use of ` as
infix, although I'm not sure if that is a particular issue given -
(negation/subtraction) and -- (comment) couldn't be more different.
More information about the Haskell-Cafe