Also interesting and worthy of note is that this project transitioned to BSD recently, and they are doing it as part of a donation drive.<p><a href="http://www.shenlanguage.org/shenbsd.htm" rel="nofollow">http://www.shenlanguage.org/shenbsd.htm</a><p>I am an amateur Lisper, and like others I whined (perhaps irrationally) that their custom non-OSI only one implementation of the language or else license was scaring people off. Not that the BSD license assuages my concerns about community weirdness (hard to describe, but this ia a very personal opinion and you can dismiss it), but I would like to see if the demand will drive open sourcing the code.<p>Also very cool is that you can find Shen implementations in more than one flavor: Common Lisp, Clojure, Ruby, and more. Definitely check out the site if you have not yet.
It's pretty strange to see a "Lisp" with so much syntax. Lots of infix notation, and even semicolons! Usually Lisps have a very simple reader that reads S-expression and a few other things, but here we have this:<p><pre><code> (define map
{ (A --> B) --> (list A) --> (list B) }
F [] -> []
F [ X | XS ] -> [(F X) | (map F XS)])
</code></pre>
And this is one of the cases without any semicolons.<p>Shen also uses the atrocious "curried form" of function types, where the function that adds two numbers has type number->number->number, and the reader must do the mental gymnastics to convert it to (number,number)->number (and good luck when it's more complicated than that).<p>I wonder if you took a language like Haskell and changed some of the syntax to look Lispy if it could masquerade as a Lisp? I'm not saying that's what's happening, it's just hard to wrap my head around a syntax like this that claims to be Lispy.
Put this in my "watch later" queue. I'm <i>very</i> interested in a Lisp whose type system is on par with that of Haskell/Ocaml.<p>EDIT: Especially since Shen is now BSD licensed.
Once again, types are way overrated. However, Shen is an interesting new Lisp to watch. Needs a more open community, though (like a free book and/or deep documentation).
Unfortunately I found shen a pain to get into due to it still being mostly a teaching tool. However, if the community builds some nice tooling around it I will definitely give it another look.