Features:
- Has most of R5RS plus SRFIs 0, 1, 6, and 8, Wright's MATCH package and
some extras
- A generational garbage-collector (youngest generation on the C-stack)
- Efficient first-class continuations with full support for multiple values
- Compiles into relatively portable C (32-bit ints, downward growing stack
and 'alloca')
- Easy access to C-functions and -macros
- The compiler is about 3000 lines of code and should be not too difficult
to extend/hack/port/etc.
- CHICKEN is free and distributed under the GNU General Public License
Limitations:
- Only numeric types supported are fixnum (30-bit) and flonum (64-bit
double)
- Some numeric routines are missing, some are not exactness preserving
- Floating-point printing/reading uses C-library and is not overly
sophisticated
- The FFI is only minimal, yet
- No module system and no OOP-support
- Access to Scheme from C (callbacks) is relatively complicated
CHICKEN is quite stable. It compiles all Gabriel/Clinger benchmarks,
Jaffer's
r4rstest (doesn't give too much trouble) and itself (compiler and
libraries).
Of course a lot of work has yet to be done to make this a reliable Scheme
system, but perhaps it might already be useful for someone.
Anybody interested can download the system at:
<www.anu.ie/felix/chicken.html>
(BTW, my apologies for the state of the documentation)
Comments, suggestions and bug-reports would be very welcome!
felix
I have added a makefile to the distribution, so
anybody *still* interested should go ahead now
and download the thing at
<www.anu.ie/felix/chicken.html>
felix
I compiled Chicken with mingw32 (gcc for win32), but it causes a memory
access error when it compiles large *.scm files, like csi.scm. This is the
same both under Windows NT, and 9x, on machines with 128 MB RAM.
Small *.scm files compile OK. I haven't played with it enough to find out
whether it's certain Scheme constructs that cause the problem, or simply the
size of the source file.
I like the documentation, though. Well written.
greets,
Elliott
felix <fe...@anu.ie> wrote in message
news:snen8k...@corp.supernews.com...
>I compiled Chicken with mingw32 (gcc for win32), but it causes a memory
>access error when it compiles large *.scm files, like csi.scm. This is the
>same both under Windows NT, and 9x, on machines with 128 MB RAM.
>Small *.scm files compile OK. I haven't played with it enough to find out
>whether it's certain Scheme constructs that cause the problem, or simply
the
>size of the source file.
I just build the thing with Cygwin B20 (egcs 2.91.57) and the '-no-cygwin'
option (which according to the readme will "...link in the latest Mingw32
Libs...")
and everything works smoothly - large and small files.
What mingw32-version do you have?
felix