The Scala build will create a mal.jar file with all the steps' classes
in it. A `run` wrapper script will run that jar with a specific step
main class according to the `$STEP` environment variable. Now the jar
file is created only once (when testing step0) and then re-used for
testing the next steps, which should speed up the build.
Moreover, sbt now prepends shell script header to the jar file, so no
need to implement this in Makefile (for the `dist` target).
Also in this commit:
- fix *ARGV* setup in erlang and racket.
- print startup message in fsharp
Dist/packaging support for most implementations and also generate
a */mal standalone app for most languages. The following
implementations still have ability to generate a single */mal
standalone application:
- guile
- julia
- matlab (mkoctfile doesn't actually package up source files)
- swift
- vb (mkbundle error)
Also, the following are mostly packaged into a single file but need
some module dependencies
- coffee: requires node_modules/ffi
- es6: requires node_modules/ffi
- js: requires node_modules/ffi
- lua: module 'readline' not found
- miniMAL: cannot find module '/mal/node_readline.js'
- r: needs lib directory