chicken-users
[Top][All Lists]
Advanced

[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)

Hi!

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
TinyCLOS:

- 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.

[0] http://yi.org/rotty/Software.html#gnuarch

All comments welcome,
    Rotty
-- 
Andreas Rottmann         | address@hidden      | address@hidden | address@hidden
http://yi.org/rotty      | GnuPG Key: http://yi.org/rotty/gpg.asc
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]