How You Can Contribute
Many of the projects below require little or no pre-existing knowledge of the Dylan language.
These are areas where most developers, even Dylan beginners, should be able to help out.
Compiler and Runtime
This section is for lowlevel tasks that require significant system engineering expertise. If you're looking for a challenge then these are for you.
- Generic Function Dispatch Improvements
- Debugger Integration
- LLVM Compiler Backend
- C Backend and Runtime Improvements
- Numbers -- Improvements to Floats, Doubles, Integers
- SSE Math
- Type System Improvements
- Garbage Collection
- Runtime Changes
- Kythe Indexer Add Dylan support to Google's open sourced Kythe indexer. Requires augmenting the compiler to output data in the right format, or possibly implementing a post-processing step that transforms the compiler databases. I think dfmc/browser-support has the APIs for this info.
- Bazel build system Add Dylan support to Google's open sourced Bazel build system
- Package Manager The pacman library and related libraries pacman-catalog and dylan-tool have been started but there is much work to be done.
Port Open Dylan to a new platform or fix an existing port, getting deeply familiar with the environment in the process.
Packaging and Installers
Help make Dylan more accessible by packaging it for your system distribution.
Help maintain existing libraries or join the effort to create new ones.
- Collections Library
- I/O Library
- System Library
- PostgreSQL Client Library
- LevelDB Library
- SQLite Library
- Serialization Library
- Networking Improvements
- Objective-C Bridge
- GTK+ support
- Python Bridge
- uWSGI Binding
- Logging Library
- Color Output
- Object Differ -- could be part of Testworks, or not.
- TomL config language
Improve support for Dylan in your editor of choice.
- Emacs: https://github.com/dylan-lang/dylan-mode
- Sublime Text
- VSCode: https://github.com/dylan-lang/vscode-dylan
Various kinds of cleanup tasks that nobody got around to yet.