On Wed, May 20, 2009 at 1:57 AM, Tracy Harms <[email protected]> wrote: > It's been hard to research without actually learning Haskell. It seems > to me that several important monads (in the Haskell meaning of the > word) are built in to J and transparently available. Those that are > not built in to the core language may be pretty hard to implement in > J.
The point of a monad is to pass arguments implicitly. This lets a "purely functional" programming environment do some of the the same things that "not purely functional" programming languages get for free with side effects. The underlying formalisms look something like induction. The classic example of a monad is Haskell's IO monad, but this monad can only be implemented in the language infrastructure because ultimately it needs to communicate with the outside world and no amount of computation -- purely or impurely functional -- can replace communication. That said, I do not know how to implement a monad, and I might have additional insights if I did. -- Raul ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
