Shen-Language/shen-sources

Name: shen-sources

Owner: Shen Programming Language

Description: The Official Shen Sources

Created: 2015-03-15 14:48:03.0

Updated: 2018-01-12 22:48:53.0

Pushed: 2018-01-14 19:09:41.0

Homepage:

Size: 755

Language: Shen

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Current Release

Shen Logo

Official Shen Sources

This is the official repository for the open-source development of Mark Tarver's Shen. Bug reports, suggested enhancements and pull requests are welcome here.

Note that this repository does not contain a runnable implementation of Shen. Downloads for the de-facto reference implementation are available on its releases page. Other certified implementations are linked from the download page on the Shen website.

Generating K?

Shen is a self-hosted language, so its kernel implementation is written in Shen. Building K? from the Shen sources requires an executable built from the previous release of Shen.

Using Pre-Built shen-cl (Recommended)

A prebuilt copy of the reference implementation can be pulled down by running make fetch. The executable shen will be dropped under the shen-cl folder. Render the K? by running make klambda or just make.

Using Another Executable

Using your own executable is the same as above, except you override the Shen variable like this: make klambda Shen="/path/to/shen".

Releases

Release packages containing the pre-built K? and the test suite are created using make release. Archives appear under the release/ folder in both zip and tar.gz format.

Packages can be created for any version, but when uploading to the releases page, make sure to have built the specific tagged revision.

 pure
checkout shen-20.1
 fetch
 klambda
 release

Building release packages on Windows currently requires the 7-zip command 7z to be accessible from the command line.

Porting Shen

Refer to doc/ and the wiki for instructions on building a certifiable port of Shen. If you get your port to run the standard test suite successfully, let us know on the mailing list and your port will be certified.

Happy Programming!

?


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.