#!/bin/bash # # to start a CAT repl do # brood # # where can be "guile" or "mzscheme" and the expression is # something like "(load-18f)" # if BROOD_HOME is not defined, try to find the home directory. if [ -z "$BROOD_HOME" ]; then HERE=`pwd` cd `dirname $0`/.. if [ -e "scm/brood.scm" ]; then BROOD_HOME=`pwd` else cd share/brood if [ -e "scm/brood.scm" ]; then BROOD_HOME=`pwd` else echo "Brood home dir not found." echo "Please set the BROOD_HOME environment variable." exit 1 fi fi cd $HERE fi if [ -z "$BROOD_STATE" ]; then BROOD_STATE=$HOME/.brood fi export BROOD_HOME export BROOD_STATE # echo brood is using BROOD_HOME=$BROOD_HOME BROOD_STATE=$BROOD_STATE guile() { echo "brood (guile)" exec guile \ -l $BROOD_HOME/scm/guile.scm \ -l $BROOD_HOME/scm/brood.scm -c "$1" } mzscheme() { echo "brood (plt)" exec mzscheme $BROOD_MZSCHEME \ --mute-banner \ --load $BROOD_HOME/scm/mzscheme.scm \ --load $BROOD_HOME/scm/brood.scm -e "$1" } $*