How to contribute

From Gambit wiki

The development of Gambit was started in 1989 by Marc Feeley. In order to maintain tight control over the quality of the implementation, few other developers have been permitted to contribute directly to the system. Now that Gambit has matured and that the core system is unlikely to change much, we believe that it is important to open the development process to invite contributions by the Gambit user community.

Contributions are sought in at least three areas:

  • Gambit's documentation
    • Improve the user manual
    • Improve the Gambit web site
    • Write tutorials
  • Gambit's packages
    • Create and maintain Gambit-specific packages
    • Port packages from other Scheme implementations

Contributing to Gambit's source code

If you discover a problem while working with Gambit we advise that you report this on the issue tracker on github. You should do this even if you know how to fix or work around the problem, so that others can search the issue database to be aware of its existence and to see the status of the issue. Suggestions for new features can also be submitted to the github issue tracking system.

The latest sources are available in the source code repository. It can be accessed using the git distributed version control system. The details are explained in the source code repository instructions. With git you get a local copy of the source code repository which you can use to develop a patch that fixes a bug or implements a new feature. If you feel confident that the patch is correct and useful to others, you can then submit this patch to the Gambit maintainers. The patch will be reviewed to see how well it fits with the goals and philosophy of Gambit. If the patch is accepted then it will be applied to the source code repository and included in the official distribution of Gambit. If you are planning to make a substantial change to the source code it is best to discuss your plans on the Gambit mailing list beforehand to improve the likelihood it will be accepted when it is submitted.

Contributing to Gambit's documentation

The Gambit manual's source is bundled with the source code. It is in the doc subdirectory of the Gambit source code distribution. Patches to the manual can be contributed like source code contributions as explained above.

The Gambit web site is organized as a Wiki, powered by MediaWiki (the same system used by Wikipedia). The core pages and the navigation sidebar can only be edited by the Gambit maintainers. Pages which have an edit link or tab can be edited by anyone using these editing rules.

Suggestions for improving the Gambit web site or for adding new pages that can be edited should be discussed on the Gambit mailing list.

Contributing to Gambit's packages

The procedure for contributing packages is still under development. Please stay tuned.