Skip to content

Commit

Permalink
Update README.md with pkg server info
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelballantyne committed Jan 14, 2024
1 parent d1adf44 commit 01490b4
Showing 1 changed file with 25 additions and 3 deletions.
28 changes: 25 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,38 @@

A metalanguage for creating sophisticated DSLs in Racket. You provide a grammar and binding rules, and the metalanguage provides a front-end that checks binding, expands macros to your DSL core langauge, and provides tools for working with binding in your DSL's compiler.

This is still a prototype: it is not yet stable, and the documentation is incomplete.

There are a few relatively-complete example DSL implementations: [miniKanren](tests/dsls/minikanren-rs2e), [miniclass](tests/dsls/miniclass), and [TinyHDL](tests/dsls/tiny-hdl). There is also a small [state machine DSL](demos/visser-symposium).

The package is not yet available on the Racket package server. You can install it by checking out the Git repository, changing directory into it, and running:
A release is available on the Racket package server as [`syntax-spec-v1`](https://pkgs.racket-lang.org/package/syntax-spec-v1).

This is still a prototype: future releases will likely contain breaking changes, and the documentation is incomplete. However, breaking changes will be released under an updated package name.

To use the released package, install via:

```
raco pkg install syntax-spec-v1
```

and import as

```
(require syntax-spec-v1)
```


To use the latest, unstable version, check out the Git repository, change directory into it, and run:


```
raco pkg install
```

Then import as

```
(require syntax-spec)
```

Once installed, you can access the documentation via:

```
Expand Down

0 comments on commit 01490b4

Please sign in to comment.