[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Garbage collection
- From: James McCartney <asynth@...>
- Date: Wed, 30 Oct 2002 19:05:55 -0800
Hello - first post. It seems there are a number of issues being solved
currently in Lua that I've already solved, so I thought I'd give a
reference to my source code in case it is useful.
My language SuperCollider uses a real time garbage collector based on
the Wilson, Johnstone algorithm which is based in turn on Baker's
treadmill algorithm. It is quite specific to my language but might be
useful as a reference.
My language is used for real time audio synthesis control. It is like
Smalltalk - it has classes - and constant time message lookup (not
hashing - it uses selector based row displacement from a paper by
Driesen and Holze IIRC). It has real honest-to-god closures and
coroutines (that take and return arguments upon yield calls).
I would be interested in moving to a prototype based language if there
were one available that were fast enough with a real time GC, closures
and coroutines. So I hope Lua could move in that direction.
The language currently builds on MacOS X only.
The code can be obtained from sourceforge via:
http://www.audiosynth.com/sc3cvs.html
(There is also code in that repository for a real time audio synthesis
server which you might not be interested in).
--
--- james mccartney james@audiosynth.com <http://www.audiosynth.com>
SuperCollider - a real time synthesis programming language for the
PowerMac.