[Haskell-cafe] If you'd design a Haskell-like language, what would you do different?

MigMit miguelimo38 at yandex.ru
Thu Dec 22 22:29:28 CET 2011



Отправлено с iPad

22.12.2011, в 23:56, Conor McBride <conor at strictlypositive.org> написал(а):

> I'd be glad if "pure" meant "total", but
> partiality were an effect supported by the run-time system. Then we
> could choose to restrict ourselves, but we wouldn't be restricted by the
> language.

I second that. Having a special "partiality" monad would be nice. However, I'm not certain as to how it would interact with recursion — if f is a total function, fix f could be (and almost certainly would be) a possibly undiefined value. So, fix should have type "(a -> a) -> Partial a"; that's OK, but implicit uses of fix (I mean let statements) would be quite different.

> I'd like to program with an applicative notion, but
> in monadic types. That's what I'd do different, and for me, the subject
> is not a hypothetical question.

So... you are developing a programming language with all calculations being automatically lifted to a monad? What if we want to do calculations with monadic values themselves, like, for example, store a few monadic calculations in a list (without joining all there effects as the sequence function does)?




More information about the Haskell-Cafe mailing list