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
> 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.
I just checkout the sources (revision 41), then open cat.sln with
MonoDevelop
(OS: Mandrakelinux 10.1, mono 1.2.3.1), then rebuild solution.
The sources was compiled and there were only the two warnings:
[Task:File=/home/michael/cat/trunk/GraphWindow.cs, Line=68, Column=22,
Type=Warning, Priority=Normal, Description=The private method
`Cat.Window.GetForm()' is never used(CS0169)]
[Task:File=/home/michael/cat/trunk/Method.cs, Line=216, Column=36,
Type=Warning, Priority=Normal, Description=The variable `pi' is
declared but never used(CS0168)]
Regards,
Michael Nedzelsky
Does this mean Mono has support for Windows.Forms?
- Christopher
On Mar 31, 1:42 am, "Christopher Diggins" <cdigg...@gmail.com> wrote:
> Does this mean Mono has support for Windows.Forms?
Yes, though this support is still limited.
You can see
http://www.go-mono.com/archive/1.2/
for details.
Michael
$ gmcs -out:cat-mono.exe -r:System.Data -r:System.Drawing
-r:System.Windows.Forms *.cs
Method.cs(216,36): warning CS0168: The variable `pi' is declared but never used
GraphWindow.cs(68,22): warning CS0169: The private method
`Cat.Window.GetForm()' is never used
Compilation succeeded - 2 warning(s)
$ mono cat-mono.exe cat/standard.cat
Cat Interpreter
version 0.10.0 March 29, 2006
by Christopher Diggins
this software is public domain
http://www.cat-language.com
Type in #help for help, and #exit to exit.
>> 1 2 [+]
stack: 1 2 [+]
>> eval
stack: 3
>>
Regards,
2007/3/31, Michael Nedzelsky <MichaelN...@yandex.ru>: