Version 12 (modified by rme, 9 years ago) (diff) |
---|
Things To Do
Here are some big and small things that would be good to do. If you would be interested in funding any of these, please send mail to business@…. If you would be interested in volunteering to work on any of these, that would be welcome, too. Please send mail to openmcl-devel@… to discuss any of them.
Microsoft Windows
The 32-bit Windows lisp doesn't currently run on 64-bit Windows. This is because 64-bit Windows doesn't let us set up an x86 LDT so that we can use a segment register to point to thread-local data. A possible solution to this is to pare down the size of the TCR so that we can fit as many slots as possible into the Windows TLS vector.
Documentation
We could really use better documentation tools. We had a long thread on openmcl-devel about it, but there seems to be no magic way to make editing Docbook content easier.
Release Tools
Building binaries for releases is currently a tedious manual process. There are currently 14 sets of binaries to build. Automating this would be a real time-saver.
A buildbot that builds and tests ccl regularly.
IDE stuff
Unbundle the Cocoa-based IDE from the ccl distribution and make it available separately.
Add and document a reasonble way to create NSStrings/CFStrings from lisp strings. There's unexported stuff like %make-nsstring and ccl::with-autoreleased-nsstrings, but there needs to be something official.
Design and implement some sort of windowing library for MS Windows that doesn't rely on Cocotron. Maybe something for X11, too. (Note that ccl doesn't have any idea how to call C++, so it's best to pick a library with a C interface.)
Bring back Fred.
Runtime/GC Enhancements
Make ccl reliably handle out-of-memory conditions on operating systems (like Solaris) that don't lie about memory allocation.
Objective-C Bridge
Revive support for the GNU Objective-C runtime in the Objective-C bridge.
Project Infrastructure
Rename openmcl-devel@… to ccl-devel@….
Review tickets on the Trac.
Update Trac main page now that ccl.clozure.com exists.
Ports to More Systems
Port to ARM-based systems. The Efika MX (http://www.genesi-usa.com/products/efika) is a cute little box.
Port to Itanium. Probability: low.
Port to modern SPARC. Probability: very low.
At some point, the Darwin/PPC is going to die (not least because we'll run out of working hardware). The PPC Linux port will likely live on, but we'll probably need to acquire some newer hardware one of these days.
Old stuff
- Complete the Integrated Development Environment
- Port to ARM-based OS X -- computers like the iPhone or the iPod touch could have a Clozure CL runtime
- Application Delivery -- How do you distribute an OpenMCL-based application?