Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stchang/macrotypes
https://github.com/stchang/macrotypes
racket turnstile
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/stchang/macrotypes
- Owner: stchang
- License: bsd-2-clause
- Created: 2017-01-26T15:34:26.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2022-06-02T17:31:55.000Z (over 2 years ago)
- Last Synced: 2024-11-05T22:04:17.049Z (3 months ago)
- Topics: racket, turnstile
- Language: Racket
- Homepage:
- Size: 3.55 MB
- Stars: 135
- Watchers: 6
- Forks: 14
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Turnstile+ [![Build Status](https://travis-ci.org/stchang/macrotypes.svg?branch=master)](https://travis-ci.org/stchang/macrotypes) [![Scribble Docs](https://img.shields.io/badge/Docs-Scribble%20-blue.svg)](http://docs.racket-lang.org/turnstile/index.html)
A Racket-based framework for creating extensible and reusable typed languages.
- create *typed* (Racket `#lang`) DSLs (in the same way as plain `#lang`s)
- prototype new type system features, modularly## Installation
(Requires [Racket](https://download.racket-lang.org/) v7.0 or later.)
#### Install Option 1: Via Racket [package server](https://pkgs.racket-lang.org/)
`raco pkg install --auto turnstile`
#### Install Option 2: Manual
1. clone the repo
2. `cd` into repo root dir
3. `raco pkg install --auto macrotypes-lib/ turnstile-lib/`## Examples and Tests
1. Install the examples and tests (skip this step if installed via package server):
`raco pkg install --auto rackunit-macrotypes-lib/ turnstile-example/ turnstile-test/`
2. Run the test suite: `raco test --drdr -p turnstile-test`
## Other notes
- additional tests and examples using the core types-as-macros (i.e., non-Turnstile) API:
- install: `raco pkg install --auto macrotypes-example/ rackunit-macrotypes-lib/ macrotypes-test/`
- run: `raco test --drdr -p macrotypes-test`
- POPL 2020: [[paper](http://www.ccs.neu.edu/home/stchang/pubs/cbtb-popl2020.pdf)] [[artifact](http://www.ccs.neu.edu/home/stchang/popl2020/artifact/README.html)] [[code](https://github.com/stchang/macrotypes/tree/popl2020-artifact)] [[Cur (an extensible proof assistant created with Turnstile+)](https://github.com/stchang/cur/tree/popl2020-artifact)]
- POPL 2017: [[paper](http://www.ccs.neu.edu/home/stchang/pubs/ckg-popl2017.pdf)] [[artifact](http://www.ccs.neu.edu/home/stchang/popl2017/index.html#artifact)] [[code](https://github.com/stchang/macrotypes/tree/popl2017-artifact)]