[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-users] TinyCLOS, SRFI 34, 35

From: Andreas Rottmann
Subject: [Chicken-users] TinyCLOS, SRFI 34, 35
Date: Thu, 25 Nov 2004 16:15:02 +0100
User-agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3 (gnu/linux)


As a former exclusive Guile user, I've recently tried out various
compiling alternatives, e.g. bigloo, mzscheme and chicken. I've been
playing with the original TinyCLOS package, trying/porting it with the
various implementations. As Chicken comes with a modified TinyCLOS, I
thought you might be interested in my enhancements to the original

- passing arguments to next-method now allowed
- class options
- define-class, define-method, define-generic
- slot options: init-keyword, init-value, init-thunk, init-form
- fixed bug in field initialization (missing (reverse field-initializers))
- classes and generic functions now have names
- enhanced introspection (class-direct-subclasses, 
  method-generic-function, class-direct-methods)

On top of this, I built 

1) a JUnit-like testing framework, modelled after
   clos-unit and the unit-test from Guile-Lib.
2) An implementation of SRFI 35 (condition type ~= class).
3) A very basic test suite for SRFI 35, using the unit-test framework

This all was quite easy to port to chicken, and seems to work ok. You
can find all the code in my Archive [0], branch
tiny-clos--dev--0. You'll also find a unit that includes the SRFI 34
reference implementation. 

After downloading the code, you can do "cd chicken && make", this will
build "test" and "test-srfi-35", the former being a small test/example
for tiny-clos, the latter is the unit test for SRFI 35.


All comments welcome,
Andreas Rottmann         | address@hidden      | address@hidden | address@hidden      | GnuPG Key:
Fingerprint              | DFB4 4EB4 78A4 5EEE 6219  F228 F92F CFC5 01FD 5B62

Software Patents: Where do you want to stifle inovation today?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]