[plt-scheme] Halyard 2D/3D multimedia engine
We've been using PLT Scheme at the Interactive Media Lab of Dartmouth
Medical School for nearly 6 years. Over the last two months, we've
been working to release our tools as free software.
Today, we'd like to announce two PLT-related software packages:
* Halyard, a 2D/3D multimedia engine.
* Mizzen, an implementation of SmallTalk/Ruby-style objects for PLT Scheme.
We've developed two major pieces of educational software using
Halyard, totaling roughly 150,000-200,000 lines of Scheme code.
Halyard supports audio, video and 2D graphics. It also contains an
embedded copy of the Quake 2 game engine, based on Vadim Zeitlin's
wxQuake2 work.
You can download source code and Windows binaries from here:
http://iml.dartmouth.edu/halyard/
Sufficiently adventurous Macintosh programmers are welcome to pull our
git repository and build from source.
And now, for the warnings. :-)
1) At the moment, Halyard only runs on Windows. We're porting it to
the Mac, but the Mac port has only been running for a week, and it's
still missing lots of important features.[1] And we don't yet run on
Linux at all.[2]
2) Halyard has very little documentation.
3) Halyard's Scheme APIs are still subject to change.
4) Despite our ongoing efforts to the contrary, Halyard leaks quite a
bit of memory in the PLT heap. More on this in a follow-up e-mail.
We'd like to thank the PLT Scheme community for their excellent
work--we couldn't have done this without you.
Share and enjoy!
Sincerely,
Eric Kidd
[1] Missing Halyard features on the Mac include: QuickTime, Ogg
Vorbis, Quake 2 integration and the script editor.
[2] Porting Halyard to Linux will probably require modifying Halyard
to use Cairo for off-screen drawing. We rely heavily on using
wxRawBitmap with wxOffscreenDCs, and to the best of my knowledge,
these two classes don't co-operate nicely under X11.