Sorry for sending this twice; I didn't reply to the list initially.
I thought people [1] were generally talking about lift from
Control.Monad.Trans:
class MonadTrans t where
lift :: Monad m = m a - t m a
The idea being that lifting through a monad stack feels tedious. The
proposed solution
I'd be interested in more studies in this space. Does anyone know of
empirical studies on program robustness vs. other languages?
Nick
On 09/23/2013 11:31 AM, MigMit wrote:
The classical reference is, I think, the paper “Haskell vs. Ada vs. C++ vs.
Awk vs. ... An Experiment in Software
Funny, I was thinking this morning about using something like this to convert
to/from Church numerals:
church n = foldl (.) id . replicate n
unchurch f = f succ 0
I think it's a nice pattern.
Nick
On Friday, October 26, 2012 11:41:18 AM Greg Fitzgerald wrote:
Hi Haskellers,
I've recently
It is often the case that using GADTs with phantom types can allow you to
constrain which functions can operate on the results of which constructors. I
believe this is common practice now in such situations.
Nick
On Friday, August 31, 2012 09:32:37 PM Paolino wrote:
Hello Timothy
GADTs
I found a similar question asked in June 2009 on the haskell-beginners
archives, titled Clearing Parsec error messages. A hack that was proposed
(http://www.haskell.org/pipermail/beginners/2009-June/001809.html) was to
insert a dummy character into the stream, consume it, and then fail. Still,