The husk-scheme package

[Tags: library, mit, program]

A dialect of R5RS Scheme written in Haskell. Advanced features are provided including:

Husk may be used as either a stand-alone interpreter or as an extension language within a larger Haskell application. By closely following the R5RS standard, the intent is to develop a Scheme that is as compatible as possible with other R5RS Schemes. Husk is mature enough for use in production applications, however it is not optimized for performance-critical applications.

Scheme is one of two main dialects of Lisp. Scheme follows a minimalist design philosophy: the core language consists of a small number of fundamental forms which may be used to implement other built-in forms. Scheme is an excellent language for writing small, elegant programs, and may also be used to write scripts or embed scripting functionality within a larger application.


[Skip to ReadMe]

Properties

Versions1.0, 1.1, 1.2, 1.3, 2.0, 2.1, 2.2, 2.3, 2.4, 3.0, 3.1, 3.2, 3.2.1, 3.3, 3.4, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.5.1, 3.5.2, 3.5.2.1, 3.5.2.2, 3.5.2.3, 3.5.3, 3.5.3.1, 3.5.3.2, 3.5.4, 3.5.5, 3.5.6, 3.5.7, 3.6, 3.6.1, 3.6.2, 3.6.3, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13, 3.14, 3.15, 3.15.1, 3.15.2, 3.16, 3.16.1, 3.17, 3.17.1, 3.18, 3.19
Change logChangeLog.markdown
Dependenciesarray, base (>=2.0 && <5), containers, directory, filepath, ghc, ghc-paths, haskeline, husk-scheme, mtl, parsec, process, transformers [details]
LicenseMIT
AuthorJustin Ethier
MaintainerJustin Ethier <github.com/justinethier>
CategoryCompilers/Interpreters, Language
Home pagehttp://justinethier.github.com/husk-scheme
Source repositoryhead: git clone git://github.com/justinethier/husk-scheme.git
Executableshuskc, huski
UploadedSun Dec 23 19:52:03 UTC 2012 by JustinEthier
DistributionsNixOS:3.19
Downloads6721 total (265 in last 30 days)
Votes
0 []
StatusDocs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Flags

NameDescriptionDefault
useffiTurn off FFI to decrease build times and minimize executable sizesEnabled
useptrsTurn off pointers to increase performance at the expense of severely restricting the functionality of mutable variables. Setting this flag to false will revert back to the behavior from previous versions of husk.Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for husk-scheme-3.6.2

<img src="https://github.com/justinethier/husk-scheme/raw/master/docs/husk-scheme.png" alt="husk-scheme">

husk is a dialect of Scheme written in Haskell that adheres to the R<sup>5</sup>RS standard. Advanced R<sup>5</sup>RS features are provided including continuations, hygienic macros, and a full numeric tower.

husk may be used as either a stand-alone interpreter or as an extension language within a larger Haskell application. By closely following the R<sup>5</sup>RS standard, the intent is to develop a Scheme that is as compatible as possible with other R<sup>5</sup>RS Schemes. husk is mature enough for use in production applications, however it is not optimized for performance-critical applications.

Scheme is one of two main dialects of Lisp. Scheme follows a minimalist design philosophy: the core language consists of a small number of fundamental forms which may be used to implement other built-in forms. Scheme is an excellent language for writing small, elegant programs, and may also be used to write scripts or embed scripting functionality within a larger application.

Installation

The Glasgow Haskell Compiler (GHC) is required to build, install, and run husk. All recent versions of GHC are supported, including 7.0, 7.2, 7.4, and 7.6. The easiest way to get GHC is via the Haskell Platform.

husk may be installed using cabal:

cabal update
cabal install husk-scheme

husk has been tested on Windows, Linux, and FreeBSD.

More information is available on the husk website.

License

Copyright (C) 2010 Justin Ethier

husk scheme is available under the MIT license.

The interpreter is based on code from the book Write Yourself a Scheme in 48 Hours written by Jonathan Tang and hosted / maintained by Wikibooks.