(Arne Babenhauserheide)
2017-08-21: merge merge
diff --git a/.hgsigs b/.hgsigs --- a/.hgsigs +++ b/.hgsigs @@ -27,3 +27,4 @@ 4980dd6c871fcd40c975ea9fa4043011d701b747 ec20db1b7798914dafd621365aaeab9960781a30 0 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 diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -34,3 +34,4 @@ 625eec6805f907b9d6338d09c8199e9ed3e79ab1 e6977cfff0c8e0d2b1b33f724e0e4607ea15f703 v0.8.7 cb0b13b613cbd3c39f5384ea85a570fee2bb3569 v0.9.0 2614197d8be8d9c7cdc00b4ce225f74524b66716 v0.9.1 +40595e956e7d267625accf9d5584bae88466b41a v0.9.2 diff --git a/NEWS b/NEWS --- a/NEWS +++ b/NEWS @@ -1,5 +1,15 @@ wisp (): -- + +wisp 0.9.2: +- README: note the releases and split usage into setup+usage +- also add examples argparse, y-combinator, unbiased-std, ild, duel, + commandline-handling, cartesian-sets, advent-2016-day-7 +- added datatype benchmarks in examples/benchmark.w +- ensemble estimation: setup deviations from the covariance matrix + by cholesky decomposition +- enter three witches: i love you (dynamic dialog generation) +- enter three witches: multiple scenes, whitespace in names, colors + and .. as escape for . wisp 0.9.1: - add enter three witches: minimum overhead for a theater script diff --git a/README.md b/README.md --- a/README.md +++ b/README.md @@ -13,7 +13,9 @@ Wisp: Whitespace to Lisp rek {i + 1} v {u + v} (rek (+ i 1) v (+ u v))))) -Wisp turns indentation based syntax into Lisp. The conversion is homoiconic[^h], generic[^g], and backwards-compatible[^b]. It is inspired by [project readable][], but tries to keep itself simple (and stupid: just add parens for indentation). More information is available on the [wisp-website][], and code in the [wisp-repository][]. +Wisp turns indentation based syntax into Lisp. The conversion is homoiconic[^h], generic[^g], and backwards-compatible[^b]. It is inspired by [project readable][], but tries to keep itself simple (and stupid: just add parens for indentation). + +More information is available on the **[wisp-website][]**, and code in the [wisp-repository][]. For a short presentation, see [Why Wisp?](why-wisp.html) @@ -32,13 +34,31 @@ Requirements [GNU Guile 2.x]: http://gnu.org/s/guile "GNU Guile: The official extension language for the GNU operating system." [Python 3.x]: http://python.org "Python Programming Language" +Setup +----- + +From the repository: + +* Get wisp: `hg clone http://draketo.de/proj/wisp` (needs [Mercurial](http://mercurial-scm.org)) +* Bootstrap: `cd wisp && autoreconf -i && ./configure && make` + +From a release: + +* Get a release from [bitbucket.org/ArneBab/wisp/downloads/](https://bitbucket.org/ArneBab/wisp/downloads/) +* Unpack and build: `tar xf [release].tar.gz; cd [release]; ./configure; make` + +Install systemwide with `./configure --datarootdir=/usr/share && sudo make install`, then you can run `guile --language=wisp` anywhere. Install in your home folder with `./configure --prefix=$HOME/.local; make install`. Use `guile -c '(import (language wisp spec))'` to get rid of auto-compile errors. + +Run tests with `make check`. Distribute your own version with `make distcheck`. + +If your Guile is installed in your home, you might need to use `./configure PKG_CONFIG_PATH=$HOME/.local/lib/pkgconfig/` and `make distcheck PKG_CONFIG_PATH=$HOME/.local/lib/pkgconfig/` + Usage ----- -* Get wisp: `hg clone http://draketo.de/proj/wisp` -* Bootstrap: `cd wisp && autoreconf -i && ./configure && make` * Preprocess files: `guile ./wisp.scm infile.wisp > outfile.scm` -* Wisp at the REPL: `guile -L . --language=wisp # run this in the wisp-folder` +* Wisp at the REPL: `guile -L . --language=wisp # in the wisp-folder` +* The files in examples/ show how to make executable wisp programs. Wisp and curly infix (SRFI-105) ------------------------------- diff --git a/configure.ac b/configure.ac --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ dnl run `autoreconf -i` to generate a configure script. dnl Then run ./configure to generate a Makefile. dnl Finally run make to generate the project. -AC_INIT([wisp], [0.9.1], +AC_INIT([wisp], [0.9.2], [arne_bab@web.de]) # Check for programs I need for my build AC_CANONICAL_TARGET diff --git a/wisp-reader.w b/wisp-reader.w --- a/wisp-reader.w +++ b/wisp-reader.w @@ -1,7 +1,4 @@ -#!/home/arne/wisp/wisp-multiline.sh -; !# -;; -;; Implement wisp in guile +;; Language interface for Wisp in Guile ;; ;; -Author: Arne Babenhauserheide