Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tom-weatherhead/thaw-grammar

Implementations of the grammars of several programming languages, including LISP, Scheme, Prolog, and the Lambda Calculus.
https://github.com/tom-weatherhead/thaw-grammar

grammars interpreter lambda-calculus lisp programming-languages prolog scheme typescript

Last synced: about 6 hours ago
JSON representation

Implementations of the grammars of several programming languages, including LISP, Scheme, Prolog, and the Lambda Calculus.

Awesome Lists containing this project

README

        

# thaw-grammar
Implementations of the grammars of several programming languages, including LISP, Scheme, and Prolog.

Obligatory BadgeFest:

[![apple][apple-badge-image]][apple-url]
[![atom][atom-badge-image]][atom-url]
[![circleci][circleci-badge-image]][circleci-url]
[![codeclimate][codeclimate-badge-image]][codeclimate-url]
[![git][git-badge-image]][git-url]
[![github][github-badge-image]][github-url]
[![npm][npm-badge-image]][npm-url]
[![packagephobia][packagephobia-badge-image]][packagephobia-url]
[![terminal][terminal-badge-image]][terminal-url]
[![typescript][typescript-badge-image]][typescript-url]

[![status][status-badge-image]][status-url]
[![build status][build-status-badge-image]][build-status-url]
[![npm version][npm-version-badge-image]][npm-version-url]
[![latest tag][latest-tag-badge-image]][latest-tag-url]
[![npm total downloads][npm-total-downloads-badge-image]][npm-total-downloads-url]
[![watchers][watchers-badge-image]][watchers-url]
[![stars][stars-badge-image]][stars-url]
[![issues][issues-badge-image]][issues-url]
[![forks][forks-badge-image]][forks-url]
[![contributors][contributors-badge-image]][contributors-url]
[![branches][branches-badge-image]][branches-url]
[![releases][releases-badge-image]][releases-url]
[![commits][commits-badge-image]][commits-url]
[![last commit][last-commit-badge-image]][last-commit-url]
[![types][types-badge-image]][types-url]
[![install size][install-size-badge-image]][install-size-url]
[![known vulnerabilities][known-vulnerabilities-badge-image]][known-vulnerabilities-url]
[![lines of code][lines-of-code-badge-image]][lines-of-code-url]
[![technical debt][technical-debt-badge-image]][technical-debt-url]
[![maintainability][maintainability-badge-image]][maintainability-url]
[![test coverage][test-coverage-badge-image]][test-coverage-url]
[![tested with jest][jest-badge-image]][jest-url]
[![code style: prettier][prettier-badge-image]][prettier-url]
[![license][license-badge-image]][license-url]

Much of the code in this library was based on or inspired by the book 'Programming Languages: An Interpreter-Based Approach', by Samuel N. Kamin, 1990, Addison Wesley, ISBN 0-201-06824-9.

## Implemented Languages

- APL (Kamin's Scheme-like syntax)
- CLU (Kamin's syntax)
- The Lambda Calculus (original)
- The Lambda Calculus (syntactically augmented)
- LISP
- Prolog
- SASL (Kamin's syntax)
- Scheme
- Smalltalk (Kamin's syntax)

## License
[MIT](https://choosealicense.com/licenses/mit/)

[apple-badge-image]: https://badgen.net/badge/icon/apple?icon=apple&label
[apple-url]: https://www.apple.com
[atom-badge-image]: https://badgen.net/badge/icon/atom?icon=atom&label
[atom-url]: https://atom.io
[circleci-badge-image]: https://badgen.net/badge/icon/circleci?icon=circleci&label
[circleci-url]: https://circleci.com
[codeclimate-badge-image]: https://badgen.net/badge/icon/codeclimate?icon=codeclimate&label
[codeclimate-url]: https://codeclimate.com
[git-badge-image]: https://badgen.net/badge/icon/git?icon=git&label
[git-url]: https://git-scm.com
[github-badge-image]: https://badgen.net/badge/icon/github?icon=github&label
[github-url]: https://github.com
[npm-badge-image]: https://badgen.net/badge/icon/npm?icon=npm&label
[npm-url]: https://npmjs.com
[packagephobia-badge-image]: https://badgen.net/badge/icon/packagephobia?icon=packagephobia&label
[packagephobia-url]: https://packagephobia.com/
[terminal-badge-image]: https://badgen.net/badge/icon/terminal?icon=terminal&label
[terminal-url]: https://en.wikipedia.org/wiki/History_of_Unix
[typescript-badge-image]: https://badgen.net/badge/icon/typescript?icon=typescript&label
[typescript-url]: https://www.typescriptlang.org

[status-badge-image]: https://badgen.net/github/status/tom-weatherhead/thaw-grammar
[status-url]: https://badgen.net/github/status/tom-weatherhead/thaw-grammar
[build-status-badge-image]: https://circleci.com/gh/tom-weatherhead/thaw-grammar.svg?style=shield
[build-status-url]: https://circleci.com/gh/tom-weatherhead/thaw-grammar
[npm-version-badge-image]: https://img.shields.io/npm/v/thaw-grammar.svg
[npm-version-url]: https://www.npmjs.com/package/thaw-grammar
[latest-tag-badge-image]: https://badgen.net/github/tag/tom-weatherhead/thaw-grammar
[latest-tag-url]: https://github.com/tom-weatherhead/thaw-grammar/tags
[npm-total-downloads-badge-image]: https://img.shields.io/npm/dt/thaw-grammar.svg
[npm-total-downloads-url]: https://www.npmjs.com/package/thaw-grammar
[watchers-badge-image]: https://badgen.net/github/watchers/tom-weatherhead/thaw-grammar
[watchers-url]: https://github.com/tom-weatherhead/thaw-grammar/watchers
[stars-badge-image]: https://badgen.net/github/stars/tom-weatherhead/thaw-grammar
[stars-url]: https://github.com/tom-weatherhead/thaw-grammar/stargazers
[issues-badge-image]: https://badgen.net/github/issues/tom-weatherhead/thaw-grammar
[issues-url]: https://github.com/tom-weatherhead/thaw-grammar/issues
[forks-badge-image]: https://badgen.net/github/forks/tom-weatherhead/thaw-grammar
[forks-url]: https://github.com/tom-weatherhead/thaw-grammar/network/members
[contributors-badge-image]: https://badgen.net/github/contributors/tom-weatherhead/thaw-grammar
[contributors-url]: https://github.com/tom-weatherhead/thaw-grammar/graphs/contributors
[branches-badge-image]: https://badgen.net/github/branches/tom-weatherhead/thaw-grammar
[branches-url]: https://github.com/tom-weatherhead/thaw-grammar/branches
[releases-badge-image]: https://badgen.net/github/releases/tom-weatherhead/thaw-grammar
[releases-url]: https://github.com/tom-weatherhead/thaw-grammar/releases
[commits-badge-image]: https://badgen.net/github/commits/tom-weatherhead/thaw-grammar
[commits-url]: https://github.com/tom-weatherhead/thaw-grammar/commits/master
[last-commit-badge-image]: https://badgen.net/github/last-commit/tom-weatherhead/thaw-grammar
[last-commit-url]: https://github.com/tom-weatherhead/thaw-grammar
[types-badge-image]: https://badgen.net/npm/types/thaw-grammar
[types-url]: https://badgen.net/npm/types/thaw-grammar
[install-size-badge-image]: https://badgen.net/packagephobia/install/thaw-grammar
[install-size-url]: https://badgen.net/packagephobia/install/thaw-grammar
[known-vulnerabilities-badge-image]: https://snyk.io/test/github/tom-weatherhead/thaw-grammar/badge.svg?targetFile=package.json&package-lock.json
[known-vulnerabilities-url]: https://snyk.io/test/github/tom-weatherhead/thaw-grammar?targetFile=package.json&package-lock.json
[lines-of-code-badge-image]: https://badgen.net/codeclimate/loc/tom-weatherhead/thaw-grammar
[lines-of-code-url]: https://badgen.net/codeclimate/loc/tom-weatherhead/thaw-grammar
[technical-debt-badge-image]: https://badgen.net/codeclimate/tech-debt/tom-weatherhead/thaw-grammar
[technical-debt-url]: https://badgen.net/codeclimate/tech-debt/tom-weatherhead/thaw-grammar
[maintainability-badge-image]: https://api.codeclimate.com/v1/badges/a5eb95066763b9a9163b/maintainability
[maintainability-url]: https://codeclimate.com/github/tom-weatherhead/thaw-grammar/maintainability
[test-coverage-badge-image]: https://api.codeclimate.com/v1/badges/a5eb95066763b9a9163b/test_coverage
[test-coverage-url]: https://codeclimate.com/github/tom-weatherhead/thaw-grammar/test_coverage
[jest-badge-image]: https://img.shields.io/badge/tested_with-jest-99424f.svg
[jest-url]: https://github.com/facebook/jest
[prettier-badge-image]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square
[prettier-url]: https://github.com/prettier/prettier
[license-badge-image]: https://img.shields.io/github/license/mashape/apistatus.svg
[license-url]: https://github.com/tom-weatherhead/thaw-grammar/blob/master/LICENSE