Dumping Grounds
From Gambit wiki
(→Utilities) |
(→Packages: add Physics category and '''Ising''': Computer simulations of the Ising model of spins using the Metropolis algorithm) |
||
Line 8: | Line 8: | ||
==Packages== | ==Packages== | ||
+ | ===Physics=== | ||
+ | #'''Ising''': Computer simulations of the Ising model of spins using the Metropolis algorithm | ||
+ | #: Author: Marijn Schouten | ||
+ | #: Package: [[media:ising-20090308.scm]] | ||
+ | |||
===Math=== | ===Math=== | ||
# '''Pi''': Compute pi to arbitrary precision. | # '''Pi''': Compute pi to arbitrary precision. | ||
#: Author: Marc Feeley | #: Author: Marc Feeley | ||
#: Package: [[media:Pi-r3.tgz|Pi-r3.tgz]] (old: [[media:Pi-r2.tgz|Pi-r2.tgz]]) (old: [[media:Pi-r1.tgz|Pi-r1.tgz]]) | #: Package: [[media:Pi-r3.tgz|Pi-r3.tgz]] (old: [[media:Pi-r2.tgz|Pi-r2.tgz]]) (old: [[media:Pi-r1.tgz|Pi-r1.tgz]]) | ||
+ | |||
# '''BLAS''': Thin wrapper for level 1, 2 and 3 BLAS linear algebra routines for the Gambit Scheme system. | # '''BLAS''': Thin wrapper for level 1, 2 and 3 BLAS linear algebra routines for the Gambit Scheme system. | ||
#: Author: Pierre-Alexandre Fournier | #: Author: Pierre-Alexandre Fournier | ||
#: Package: (web page) http://carretechnologies.com/scheme/blas/blas.html | #: Package: (web page) http://carretechnologies.com/scheme/blas/blas.html | ||
+ | |||
# '''FFTW3''': A wrapper for some FFTW3 functions for the Gambit Scheme system. (real, complex, multi-dimensional FFT functions) | # '''FFTW3''': A wrapper for some FFTW3 functions for the Gambit Scheme system. (real, complex, multi-dimensional FFT functions) | ||
#: Author: Pierre-Alexandre Fournier | #: Author: Pierre-Alexandre Fournier | ||
Line 23: | Line 30: | ||
#: Author: Ken Dickey | #: Author: Ken Dickey | ||
#: Package: [[media:oops34.tgz|oops34.tgz]] | #: Package: [[media:oops34.tgz|oops34.tgz]] | ||
+ | |||
# '''TinyTalk''': Self-like object system with selector [Smalltalk like] dispatch. | # '''TinyTalk''': Self-like object system with selector [Smalltalk like] dispatch. | ||
#: Author: Ken Dickey | #: Author: Ken Dickey |
Revision as of 16:46, 8 March 2009
Here you will find packages of Gambit code contributed by users. This page is meant as a simple repository where random code snippets as well as complex systems can easily be stored so that other users can get to them. This is not a substitute for a repository that is closely coupled with the Gambit system's module system (which is under development). It is meant to foster the sharing of code by making it extremely easy to publish code in a publicly accessible place. Sharing a piece of code that is incomplete, undocumented, and unreliable is better than not sharing it, because others can correct the deficiencies, learn from the code, or avoid the bugs. Hence the name Dumping Grounds for this page.
The code need not follow a specific structure. It could simply be a Scheme source file (with a .scm extension). However, if you are packaging your code specifically for storing it here, it is best if the name of the package contains a revision number (so that many revisions can be stored) and is a gzip compressed tar file (.tgz extension) containing the code and documentation (for example file Sort-r1.tgz containing the files Sort-r1/Sort.scm and possibly Sort-r1/Sort.html and other related files). For some reason the wiki insists on the package name starting with an upper-case letter. The code is assumed to be in the public domain unless you add licensing information in the package itself or the documentation.
To add a new package you must add an entry for it to this page (copy-paste an existing entry), update the file name in the [[media:Sort-r1.tgz|Sort-r1.tgz]] link, save the page and click on the link to upload your file. If you upload a new revision don't forget to change the revision number, and keep the link to the old revisions.
A list of the packages and other files with statistics is available here: Special:Imagelist
Contents |
Packages
Physics
- Ising: Computer simulations of the Ising model of spins using the Metropolis algorithm
- Author: Marijn Schouten
- Package: media:ising-20090308.scm
Math
- Pi: Compute pi to arbitrary precision.
- BLAS: Thin wrapper for level 1, 2 and 3 BLAS linear algebra routines for the Gambit Scheme system.
- Author: Pierre-Alexandre Fournier
- Package: (web page) http://carretechnologies.com/scheme/blas/blas.html
- FFTW3: A wrapper for some FFTW3 functions for the Gambit Scheme system. (real, complex, multi-dimensional FFT functions)
- Author: Pierre-Alexandre Fournier
- Package: (web page) http://carretechnologies.com/scheme/fftw3/fftw3.html
Object Systems
- Oops: Object Oriented Programming for Scheme -- Dylan/Clos-like but different
- Author: Ken Dickey
- Package: oops34.tgz
- TinyTalk: Self-like object system with selector [Smalltalk like] dispatch.
- Author: Ken Dickey
- Package: gambitTT.tgz
Graphics
- Octave: A simple plotting interface using octave and gnuplot.
- Author: Pierre-Alexandre Fournier
- Package: (web page) http://carretechnologies.com/scheme/octave/octave.html
- Schemeray: A simple (and as of yet, unoptimized) raytracer
- Author: James Long
- Package: schemeray-0.2.tgz
- Opengl FFI: A simple opengl, glu and glut ffi which supports opengl up to version 1.1.
- Author: David St-Hilaire
- Package: Opengl-ffi-r1.tgz
- Perlin Noise: A simple opengl demonstration of a sub-optimal 2d Perlin noise implementation.
- Author: David St-Hilaire
- Package: Perlin-noise-2d-r1.tgz
- Cairo: Bindings for cairo graphics.
- Author: Marco Benelli
- Package: Cairo-r2.tgz (old: Cairo-r1.tgz)
SQL
- MySQL FFI: FFI for mysql. Unsure about thread-safety, and needs more work
- Author: Jonathan Arkell
- Package: (svn repository) http://bunny.jonnay.net/zengarden/trunk/lib/mysql/
- SQLite3: a minimalistic interface to SQLite3.
- Author: Marco Benelli
- Package: SQLite3-r1.tgz
- Postgresql: A socket level client for Postgresql
- Author: Francesco Bracchi
- Package: Postgresql-r1.tgz
Parsing
- SSAX-SXML: SSAX-SXML library packaged for Gambit-C
- Author: Kirill Lisovsky (updated by Dominique Boucher)
- Package: (web page) ssax-sxml-gambit-20080402.tgz
- Mparser: A combinatorial parser (added expression parser) (parser language rewrite)
- Author: Francesco Bracchi
- Package: Mparser-r3.tgz (old: Mparser-r1.tgz, Mparser-r2.tgz)
Language
- Jss: JavaScriptScheme: a multithreaded Scheme to JavaScript compiler
- Author: Marc Feeley and Catherine Gaudron
- Package: Jss-r1.tgz
- R6RS on Gambit:Allows R6RS programs to be run on Gambit.
- Maintainer: Arthur Smyles
- Package: (web page) http://smyles.com/projects/r6gambit/
- PICOBIT: Very compact Scheme compiler and virtual machine suitable for microcontrollers.
- Author: Marc Feeley and Vincent St-Amour
- Package: Picobit-r2.tgz
FFI
- ffi-related-modules: various modules dealing with the FFI, and their dependencies (chjmodules, but someone might turn them to using bare namespaces or so; read the Readme file at the below URL)
- Author: Christian Jaeger
- Package: (web page/git repo) http://scheme.ch/gambit/preview/ffi-related-modules/
Utilities
- Sort: Provides a simple sorting procedure for lists and vectors. The mergesort algorithm is used.
- Author: Marc Feeley
- Package: Sort-r1.tgz
- Bunny Test: A simple unit testing framework.
- Author: Jonathan Arkell
- Package: (svn repository) http://bunny.jonnay.net/zengarden/trunk/lib/test/
- GetOpts: A syntactic form (let-opts) to parse command line options
- Author: Marco Benelli
- Package: GetOpts-r1.tgz
- Etags: Script that generates Emacs TAGS files from Scheme files, and recognizes nested definitions.
- Author: Vincent St-Amour
- Package: http://www-etud.iro.umontreal.ca/~stamourv/etags.scm
Full Applications
- Space-Invaders: Space Invaders classical arcade game remake in scheme over either glut or SDL.
- Author: David St-Hilaire
- Package: Space-invaders-src-v1.0.tgz
- Web Server: a web server with sessions cookies and server pages.
- Author: Francesco Bracchi
- Package: WebServer-r2.tgz (old: WebServer-r1.tgz)
- GUI-Toy: Simple Direct Media Layer prototype code with examples in the raw and using TinyTalk and Oops object systems.
- Author: Ken Dickey
- Package: GUI-Toy.tgz
- Intelligent WTF: Intelligent acronym decoder based on wtf from BSD Games
- Author: Joel J. Adamson
- Package: (web page) http://www.unc.edu/~adamsonj/software.html