There is now a new release of the new Cat version (0.10) now available
at Google code hosting ( http://code.google.com/p/cat-language/ ).
First good news:
Good news: Cat now has a self-installing package for windows.
Good news: Cat now supports optional named parameters. More on this on
my blog entry at
http://cdiggins.com/2007/03/29/quadratics-point-free-form-and-named-parameters/
Good news: The parsing code has been completely overhauled, and can
now be easily reused in other C# language projects.
Good news: All of the source code can be browsed online at
http://cat-language.googlecode.com/svn/trunk/
Good news: Issues/bugs/suggestions can be reported using an online
form at: http://code.google.com/p/cat-language/issues/list
Good news: adding new primitives to the language based on C# classes
is much easier.
Good news: type annotations now support labels. For example:
if : ('A bool ('A -> 'B) ('A -> 'B) -> 'B)
now is
if : ('A bool ontrue=('A -> 'B) onfalse=('A -> 'B) -> 'B)
Not only is that more informative, it also allows the expression of
recursive types, like:
def m : (f=(f -> 'A) -> 'A)
{ dup eval }
Now the bad news:
Bad news: Cat is now only supported on windows. To be honest the code
would only require a relatively small amount of change to be
compilalbe on Mono, but I can't spare the time to maintain
compatibility across platforms. If someone were to volunteer time to
help out, I wouldn't turn them away.
Bad news: The current release supports a smaller subset of the language.
Bad news: The current release isn't fully tested.
Bad news: The docs are out of sync.
Cheers,
Christopher