[lisp-interface-library-devel] Curating libraries
Faré
fahree at gmail.com
Mon Oct 29 22:36:55 UTC 2012
On Tue, Oct 30, 2012 at 6:32 AM, Drew Crampsie <me at drewc.ca> wrote:
> This is the call/cc that will/should be included in :interface/monad :
>
Yay for the continuation monad!
I propose you create a ips-monad.asd system and put the code
in a new monad/ directory.
> (define-interface <monad> (<type>) ()
> (:singleton)
> (:generic result (<monad> value))
> (:generic bind (<monad> monadic-value monadic-function)))
>
I would personally use :generic> to elide the <monad> argument,
here and in all definitions you have where it applies.
> ,@(when (string-equal (symbol-name symbol) "_")
> `((declare (ignorable ,symbol))))
Shouldn't that be ignore instead?
> ORG/IPS/MONAD/CONTINUATION>
I would put everything in the MONAD package,
or IPS-MONAD if you suspect there might be
any useful non-IPS monad package.
> So, that is call/cc based on the cont monad, in IPS. w00t.
>
Re-w00t!
> any questions/comments/etc are most welcome.
>
How do I combine several monads,
say, non-determinism, continuation, error, state monads?
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
Few facts are more revealing than the direction people travel
when they vote with their feet. — Don Boudreaux http://bit.ly/afZgx2
More information about the lisp-interface-library-devel
mailing list