Skip to content

Commit

Permalink
Update README
Browse files Browse the repository at this point in the history
  • Loading branch information
yitzchak committed Aug 2, 2023
1 parent 981fda1 commit 97c02b9
Showing 1 changed file with 48 additions and 1 deletion.
49 changes: 48 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,50 @@
# Invistra: a portable and extensible Common Lisp FORMAT implementation

The invistra system provides a portable implementation of Common Lisp FORMAT.
The invistra system provides a portable implementation of Common Lisp
FORMAT. It was initially part of [SICL][] but has been extracted and
the missing required features completed.

# Requirements

[ABCL][], [Clasp][], [ECL][], and [SBCL][] is the only current
implementations that this system has been tested on.

In addition to a clone of this repository in a location that is
discoverable by ASDF you will also need a clone of
[trivial-stream-column][], [Incless][] and [Inravina][].

# Usage

The core functionality is in the `invistra` package, but the Common
Lisp-like interface of `format` and `formmatter` is in the
`invistra-extrinsic` package and system. To call format try
the following in SBCL:

```
* (asdf:load-system :invistra-extrinsic)
T
* (invistra-extrinsic:format t "Wibble: ~a~%"
:quux)
Wibble: QUUX
NIL
```

Invistra can also replace an implementation's FORMAT
implementation. This is done with the `invistra-shim` system.

```
* (asdf:load-system :invistra-shim)
T
* (format t "Wibble: ~a~%" :quux)
Wibble: QUUX
NIL
```

[ABCL]: https://armedbear.common-lisp.dev/
[CLASP]: https://github.com/clasp-developers/clasp
[ECL]: https://ecl.common-lisp.dev/
[Incless]: https://github.com/s-expressionists/Incless
[Inravina]: https://github.com/s-expressionists/Inravina
[SBCL]: http://sbcl.org
[SICL]: https://github.com/robert-strandh/SICL
[trivial-stream-column]: https://github.com/yitzchak/trivial-stream-column

0 comments on commit 97c02b9

Please sign in to comment.