New new new try at implementing Global Script in Haskell. Compiles Global Script to 'byte-code' written in the IO monad (http://globalscript.org/)
root
- bin
- src
- .boring
- .ignore
- CODE_OF_CONDUCT.md
- CONTRIBUTING
- CONTRIBUTORS
- COPYRIGHT
- PSL
- README
- ROYALTIES
- authors-count
- build-all
- ghcoptions
- install-prereqs.sh
- setup
- test-all
This is *alpha quality* software.
It works for me on my machine; it hasn't been tested on anything else.
Use at your own risk.
This is pretty self-explanatory to me, but if it isn't to you:
You will need Plan 9 from User Space, here: https://9fans.github.io/plan9port/ .
You also will need the language spec, here: https://hub.darcs.net/jcast/globalscript-spec (Darcs Hub) or here: https://hub.darcs.net/jcast/globalscript-spec (GitHub).
The language spec should go in a parallel directory to this checkout.
Set
HSGLOBALSCRIPT=`pwd`
GS_SPEC=whereever you put the globalscript-spec checkout
Then run
sh install-prereqs.sh
sh setup
./test-all
to test and build this checkout.
To run a Global Script program, wrap it in
import GSI.Env (runGSProgram)
$gsimports
main = runGSProgram $ [gs:value|
-- Global Script code goes here
|]
, save that to a .hsgs file, then run
$HSGLOBALSCRIPT/bin/hsgs2hs $foo.hsgs
ghc -package-env=$HSGLOBALSCRIPT/package.env --make foo.hs -o foo
./foo
to compile and run it.