Greg Buchholz | 9 Nov 2005 17:11
Picon
Favicon

[stack] Fwd: Please forward to "concatenative"


--- Manfred Von Thun <m.vonthun <at> latrobe.edu.au> wrote:

> Date: Wed, 09 Nov 2005 17:12:27 +1100
> Subject: Please forward to "concatenative"
> From: Manfred Von Thun <m.vonthun <at> latrobe.edu.au>
> To: <sleepingsquirrel <at> yahoo.com>
> CC: Manfred Von Thun <m.vonthun <at> latrobe.edu.au>
> 
> Dear Greg
> 
>     Since you were the last to contribute to the mailing group, I am
> asking
> you for a favour. Would you please forward this to
> concatenative <at> yahoogroups.com :
> 
> The antique mainframe on which I have been working for many years is
> about
> to be shut down, and the mailer has been shut off already because its
> security has been compromised. So my old email address
> phimvt <at> lurac.latrobe.edu.au cannot be used any more. I have a new email
> which uses our current naming convention: m.vonthun <at> latrobe.edu.au and
> I am
> learning a new mailer. But I have not yet completed my new membership
> of
> concatenative. Hence I have asked Greg to forward this message.
> 
> I have completed my work on a flat version of Joy:
>         http://www.latrobe.edu.au/philosophy/phimvt/joy/jp-flatjoy.html
> Or from the main Joy page:
(Continue reading)

Manfred Von Thun | 21 Nov 2005 06:37
Picon
Picon
Favicon

[stack] Monads in Joy


PREAMBLE

For some years now I have been trying to understand monads in category
theory and computing, with an embarrassing lack of any success. But recently
things finally fell into place, and I want to share this with the group -
and when I get around to it I want to write it up fully.

"Monads arose in category theory, and have been used extensively in the
Haskell programming community." True. But it led me and possibly others to
several misconceptions:

"Monads are for lazy languages like Haskell." False. You can have them in
the eager language ML.

"Monads are for strongly but polymorphically typed languagges." False. You
can have monads in Lisp or Scheme (see Oleg's work).

"Monads need lambda abstractions and hence only work for lambda calculus
based languages." False. Any lambda calculus language can be translated into
SK calculus which has no lambda abstractions.

"Monads need a (binary infix) operator 'bindM' which semantically is a
cousin of the apply operator (and syntactically written in reverse, but that
is trivial). So monads can be used in applicative languages such as Haskell,
ML, Lisp/Scheme, SK-calculus." True. "But monads cannot be used in
concatenative languages such as Joy." False. That is what I want to show.

THE LIST MONAD IN JOY

(Continue reading)


Gmane