<br><font size=2 face="sans-serif">My apology to those who don't care about
Java. Please trash this note.</font>
<br>
<br><font size=2 face="sans-serif">I recently published two open source
Java projects that are based on the Monad computation model learned from
Haskell community.</font>
<br>
<br><font size=2 face="sans-serif">1. A port for Parsec. This library is
called Jparsec. It implements monadic parser combinator in Java. Not nearly
as concise and clean because of the limitation of the Java language, but
it implements the same idea. And it looks like the only monadic parser
combinator lib in Java so far, according to my google homework. ;--)</font>
<br>
<br><font size=2 face="sans-serif">url: http://docs.codehaus.org/display/JPARSEC/home</font>
<br>
<br><font size=2 face="sans-serif">2. A light-weight Dependency Injection
container that's built around the Monad model. </font>
<br>
<br><font size=2 face="sans-serif">If you see</font>
<br><font size=2 face="sans-serif">&lt;sequence id=&quot;mybean&quot;&gt;</font>
<br><font size=2 face="sans-serif">&nbsp; &lt;bean var=&quot;a1&quot; class=&quot;A1&quot;/&gt;</font>
<br><font size=2 face="sans-serif">&nbsp; &lt;bean var=&quot;a2&quot; class=&quot;A2&quot;/&gt;</font>
<br><font size=2 face="sans-serif">&nbsp; &lt;method class=&quot;X&quot;
name=&quot;create&quot; args=&quot;$a1,$a2&quot;/&gt;</font>
<br><font size=2 face="sans-serif">&lt;/sequence&gt;</font>
<br>
<br><font size=2 face="sans-serif">You'll know what I'm talking about ---
do-notation. With a bunch of &quot;bind&quot; calls under the hood, it
is equivalent as saying:</font>
<br><font size=2 face="sans-serif">do</font>
<br><font size=2 face="sans-serif">&nbsp; a1 = bean &quot;A1&quot;</font>
<br><font size=2 face="sans-serif">&nbsp; a2 = bean &quot;A2&quot;</font>
<br><font size=2 face="sans-serif">&nbsp; method &quot;X&quot; &quot;create&quot;
[a1,a2]</font>
<br>
<br>
<br><font size=2 face="sans-serif">url: http://docs.codehaus.org/display/YAN/home</font>
<br>
<br><font size=2 face="sans-serif">This is the only ioc container that
uses Monad model in Java.</font>
<br>
<br><font size=2 face="sans-serif">Just FYI. Any comment is welcome.</font>
<br>
<br><font size=2 face="sans-serif">Ben.</font>