#!/bin/sh # Bootstrap wisp-guile with wisp.py if [[ x"$1" == x"" ]]; then srcdir=. else srcdir="$1" fi # Bootstrap wisp-guile with wisp.py if [[ x"$2" == x"" ]]; then guile="guile" else guile="$2" fi # Bootstrap wisp-guile with wisp.py if [[ x"$3" == x"" ]]; then python3="python3" else python3="$3" fi diff=$(${python3} ${srcdir}/wisp.py ${srcdir}/wisp-guile.w > 1 && ${guile} 1 ${srcdir}/wisp-guile.w > 2 && ${guile} 2 ${srcdir}/wisp-guile.w > wisp.scm && diff 2 wisp.scm && echo success) if [[ ! x"${diff}" == x"success" ]]; then echo "failed to bootstrap wisp.scm. diff: " ${diff} exit 1 fi echo "successfully bootstrapped wisp.scm" echo preparing the reader: wisp at the REPL echo parsing the spec file... mkdir -p language/wisp ${guile} wisp.scm ${srcdir}/wisp-reader.w 2>/dev/null > language/wisp/spec.scm \ && echo ...precompiling the spec file... \ && ${guile} -L . -s language/wisp/spec.scm \ && echo ...succeeded \ && echo to use wisp at the REPL, run '`'${guile} -L . --language=wisp'`'