{"id":13546552,"url":"https://github.com/justinethier/husk-scheme","last_synced_at":"2025-05-16T15:07:11.598Z","repository":{"id":53251538,"uuid":"687620","full_name":"justinethier/husk-scheme","owner":"justinethier","description":"A full implementation of the Scheme programming language for the Haskell Platform.","archived":false,"fork":false,"pushed_at":"2023-11-15T03:49:59.000Z","size":10943,"stargazers_count":309,"open_issues_count":32,"forks_count":28,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-04-12T11:58:22.640Z","etag":null,"topics":["haskell","scheme"],"latest_commit_sha":null,"homepage":"http://justinethier.github.io/husk-scheme","language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/justinethier.png","metadata":{"files":{"readme":"README.markdown","changelog":"ChangeLog.markdown","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null}},"created_at":"2010-05-26T17:02:56.000Z","updated_at":"2025-02-04T04:38:14.000Z","dependencies_parsed_at":"2023-11-15T04:32:12.456Z","dependency_job_id":"439e2896-2bb7-4ae2-a4c9-33d3e223222c","html_url":"https://github.com/justinethier/husk-scheme","commit_stats":{"total_commits":3407,"total_committers":13,"mean_commits":262.0769230769231,"dds":0.06486645142353975,"last_synced_commit":"d5643af2f344013f403bc4c97d6ead4e6c19af52"},"previous_names":[],"tags_count":53,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinethier%2Fhusk-scheme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinethier%2Fhusk-scheme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinethier%2Fhusk-scheme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinethier%2Fhusk-scheme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/justinethier","download_url":"https://codeload.github.com/justinethier/husk-scheme/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254553959,"owners_count":22090417,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["haskell","scheme"],"created_at":"2024-08-01T12:00:40.051Z","updated_at":"2025-05-16T15:07:11.578Z","avatar_url":"https://github.com/justinethier.png","language":"Haskell","funding_links":[],"categories":["Haskell"],"sub_categories":[],"readme":"[\u003cimg src=\"https://github.com/justinethier/husk-scheme/raw/master/docs/husk-scheme.png\" alt=\"husk-scheme\"\u003e](http://justinethier.github.com/husk-scheme)\n\nHusk is a dialect of Scheme written in Haskell that implements a superset of the [R\u003csup\u003e5\u003c/sup\u003eRS standard](http://www.schemers.org/Documents/Standards/R5RS/HTML/) and a large portion of the [R\u003csup\u003e7\u003c/sup\u003eRS-small](r7rs.org) language. Advanced features are provided including continuations, hygienic macros, libraries, and a full numeric tower.\n\nHusk may be used as either a stand-alone interpreter or as an extension language within a larger Haskell application. By closely following the R\u003csup\u003e5\u003c/sup\u003eRS standard, the intent is to develop a Scheme that is as compatible as possible with other R\u003csup\u003e5\u003c/sup\u003eRS Schemes. Husk is mature enough for use in production applications, however it is not optimized for performance-critical applications. \n\nScheme 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.\n\nMore information is available on the [husk website](http://justinethier.github.com/husk-scheme).\n\nInstallation\n------------\n\n1. \u003cb\u003ePrerequisites\u003c/b\u003e: You will need the [Haskell Platform](http://hackage.haskell.org/platform/) if you don't already have a recent copy installed.\n\n2. \u003cb\u003eInstall Husk\u003c/b\u003e using [cabal](http://www.haskell.org/cabal/):\n\n        cabal update\n        cabal install husk-scheme\n\n    If you are new to Haskell or just want to run Husk you may also need to run:\n\n        cabal install --lib husk-scheme\n\n3. \u003cb\u003eAdjust your PATH\u003c/b\u003e: Before running Husk you may also need to add the cabal executable directory to your path. On Linux this is `~/.cabal/bin`. \n\n4. Now you are ready to start up the interpreter:\n\n        justin@my-pc$ huski\n          _               _        __                 _                          \n         | |             | |       \\\\\\               | |                         \n         | |__  _   _ ___| | __     \\\\\\      ___  ___| |__   ___ _ __ ___   ___  \n         | '_ \\| | | / __| |/ /    //\\\\\\    / __|/ __| '_ \\ / _ \\ '_ ` _ \\ / _ \\ \n         | | | | |_| \\__ \\   \u003c    /// \\\\\\   \\__ \\ (__| | | |  __/ | | | | |  __/ \n         |_| |_|\\__,_|___/_|\\_\\  ///   \\\\\\  |___/\\___|_| |_|\\___|_| |_| |_|\\___| \n                                                                             \n         http://justinethier.github.com/husk-scheme                              \n         (c) 2010-2014 Justin Ethier                                             \n         Version 3.18 \n                                                                             \n        huski\u003e (define (hello) 'world)\n        (lambda () ...)\n        huski\u003e (hello)\n        world\n\nHusk has been tested on Windows, Linux, and FreeBSD.\n\nDocumentation\n-------------\nThe online [user manual](http://justinethier.github.io/husk-scheme/manual/index.html) provides an overview of the Scheme language as implemented by Husk, including:\n\n - A [getting started](http://justinethier.github.io/husk-scheme/manual/getting-started.html) guide.\n - [Instructions](http://justinethier.github.io/husk-scheme/manual/haskell-interface.html) for using the [Haskell API](http://hackage.haskell.org/package/husk-scheme) \n - An alphabetical listing of the [Scheme API](http://justinethier.github.io/husk-scheme/manual/node106.html).\n\n**Directory Structure**\n\n - **`docs`** - Documentation has been moved from here to the [`gh-pages`](http://justinethier.github.io/husk-scheme/) branch.\n - [**`examples`**](https://github.com/justinethier/husk-scheme/tree/master/examples) - Example programs, mostly written in Scheme.\n - [**`extensions`**](https://github.com/justinethier/husk-scheme/tree/master/extensions) - Haskell-based extensions to Husk.\n - [**`hs-src`**](https://github.com/justinethier/husk-scheme/tree/master/hs-src) - Haskell source code for Husk.\n - [**`lib`**](https://github.com/justinethier/husk-scheme/tree/master/lib) - Library portions of Husk written in Scheme.\n - [**`scripts`**](https://github.com/justinethier/husk-scheme/tree/master/scripts) - Build scripts for Husk and a basic Emacs integration script.\n - [**`tests`**](https://github.com/justinethier/husk-scheme/tree/master/tests) - Functional tests for Husk. These can be run automatically by using `make test` from the main Husk directory.\n\n\nLicense\n-------\nCopyright (C) 2010 [Justin Ethier](http://github.com/justinethier)\n\nHusk scheme is available under the [MIT license](http://www.opensource.org/licenses/mit-license.php).\n\nThe interpreter is based on code from the book [Write Yourself a Scheme in 48 Hours](http://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours) written by Jonathan Tang and hosted / maintained by Wikibooks.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustinethier%2Fhusk-scheme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjustinethier%2Fhusk-scheme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustinethier%2Fhusk-scheme/lists"}