Iqbal Ansari [Mon, 15 Aug 2016 08:14:32 +0000 (13:44 +0530)]
Implementation of step1 without the optional functionality
Iqbal Ansari [Sat, 13 Aug 2016 19:37:22 +0000 (01:07 +0530)]
Add common-lisp step0
Joel Martin [Thu, 25 Aug 2016 16:17:33 +0000 (11:17 -0500)]
PowerShell: add missing Makefile.
Joel Martin [Wed, 24 Aug 2016 22:48:56 +0000 (17:48 -0500)]
Fix step4 case sensitivity test.
Joel Martin [Wed, 24 Aug 2016 22:45:38 +0000 (17:45 -0500)]
PowerShell: add to Travis build.
Joel Martin [Wed, 24 Aug 2016 22:42:19 +0000 (17:42 -0500)]
README: add PowerShell, implementation 58.
Joel Martin [Wed, 24 Aug 2016 22:39:24 +0000 (17:39 -0500)]
tests: additional tests based on PowerShell impl
- step1: empty list and vector
- step4: special forms case-sensitivity
- step9: apply with an empty list/vector
Joel Martin [Sun, 21 Aug 2016 22:14:01 +0000 (17:14 -0500)]
PowerShell: steps 4-A, optional, and self-hosting
Joel Martin [Sat, 20 Aug 2016 20:09:19 +0000 (15:09 -0500)]
PowerShell: steps 0-3
Joel Martin [Tue, 9 Aug 2016 19:02:55 +0000 (14:02 -0500)]
Merge pull request #229 from wasamasa/chuck-implementation
ChucK implementation
Vasilij Schneidermann [Tue, 9 Aug 2016 18:45:33 +0000 (20:45 +0200)]
Add basic Makefile
Vasilij Schneidermann [Tue, 9 Aug 2016 17:48:54 +0000 (19:48 +0200)]
Add chuck to Travis builds
Vasilij Schneidermann [Tue, 9 Aug 2016 17:25:33 +0000 (19:25 +0200)]
Add Dockerfile fixes and change runner to bash
Thanks to @kanaka
Vasilij Schneidermann [Mon, 8 Aug 2016 19:32:30 +0000 (21:32 +0200)]
Support backspace in readline implementation
Vasilij Schneidermann [Sun, 7 Aug 2016 23:19:05 +0000 (01:19 +0200)]
Mention in README
Vasilij Schneidermann [Sun, 7 Aug 2016 23:09:39 +0000 (01:09 +0200)]
Move run_chuck.rb to run
Vasilij Schneidermann [Sat, 6 Aug 2016 21:57:38 +0000 (23:57 +0200)]
Remove temp file
Vasilij Schneidermann [Sat, 6 Aug 2016 21:57:14 +0000 (23:57 +0200)]
Add run script, fix argv bug
Vasilij Schneidermann [Sat, 6 Aug 2016 21:56:29 +0000 (23:56 +0200)]
Merge branch 'master' into chuck-implementation
Vasilij Schneidermann [Sat, 6 Aug 2016 20:41:00 +0000 (22:41 +0200)]
Self-hosting fix
Vasilij Schneidermann [Sat, 6 Aug 2016 19:25:56 +0000 (21:25 +0200)]
Implement step A
Vasilij Schneidermann [Sat, 6 Aug 2016 15:42:56 +0000 (17:42 +0200)]
Add a self-made readline implementation
Vasilij Schneidermann [Fri, 5 Aug 2016 22:34:18 +0000 (00:34 +0200)]
Implement step 9
Vasilij Schneidermann [Mon, 1 Aug 2016 08:40:32 +0000 (10:40 +0200)]
Implement step 8
Joel Martin [Mon, 1 Aug 2016 04:25:23 +0000 (23:25 -0500)]
Swift3: update to Swift 3 Preview 3.
Joel Martin [Mon, 1 Aug 2016 04:16:26 +0000 (23:16 -0500)]
Merge pull request #228 from fredim/swift3
Squashed commits, updated to latest swift3 (swift-3.0-PREVIEW-2)
Vasilij Schneidermann [Sat, 30 Jul 2016 19:53:24 +0000 (21:53 +0200)]
Implement step 7
Vasilij Schneidermann [Fri, 29 Jul 2016 22:50:12 +0000 (00:50 +0200)]
Implement step 6
Fred Im [Fri, 29 Jul 2016 18:37:32 +0000 (18:37 +0000)]
Squashed commits, updated to latest swift3 (swift-3.0-PREVIEW-2)
Main changes:
* consistency of func arguments, while every argument has both an outer and an inner name,
but the first argument's outer was "unnamed" by default in swift<2. now all arguments are consistent
and requires the initial "_" to declare the outer "unnamed" for the first argument
* indexes are now simpler types, the Array.index function computes successor/predecessor
* many, many API changes, that result in shorter "verb" names of functions with named arguments
ex: Array.joinWithSeparator(String) -> Array.joined(separator: String)
Joel Martin [Fri, 29 Jul 2016 15:49:13 +0000 (10:49 -0500)]
ada: stats target.
Also, fix Crystal dockerfile build.
Joel Martin [Fri, 29 Jul 2016 15:48:13 +0000 (10:48 -0500)]
perl6: update/add missing Dockerfile. Stats target.
- Update docker image from rakudo 2016-04 to 2016-07
Joel Martin [Mon, 27 Jun 2016 16:42:36 +0000 (11:42 -0500)]
Merge pull request #225 from rhysd/crystal-0.18.4
Crystal 0.18.4
rhysd [Fri, 24 Jun 2016 23:21:36 +0000 (08:21 +0900)]
Crystal: Use Int64 instead of Int32 because time_ms requires 64bit integer
This fixes a test case for stepA.
rhysd [Fri, 24 Jun 2016 23:21:15 +0000 (08:21 +0900)]
Crystal: subcommand is changed from 'build' to 'compile'
Joel Martin [Fri, 17 Jun 2016 21:12:55 +0000 (16:12 -0500)]
Merge pull request #224 from dubek/logo
Logo implementation
Dov Murik [Wed, 11 May 2016 17:32:51 +0000 (13:32 -0400)]
Logo implementation
Tested on UCBLogo 6.0 with some minor tweaks (for performance and adding
a `timems` function). The tweaks are performed during Docker image
creation (see Dockerfile).
Tests of step 5 are skipped because UCBLogo is too slow.
Interop is available via `(logo-eval "logo code to run")`.
The `examples` directory contains a Mal example of drawing a tree using
turtle graphics.
Joel Martin [Thu, 16 Jun 2016 13:38:57 +0000 (08:38 -0500)]
Merge pull request #223 from wasamasa/better-elisp-eval
Improve elisp-eval to use MAL types
Vasilij Schneidermann [Thu, 16 Jun 2016 07:32:55 +0000 (09:32 +0200)]
Improve elisp-eval to use MAL types
Joel Martin [Wed, 15 Jun 2016 15:41:55 +0000 (10:41 -0500)]
Merge pull request #222 from wasamasa/elisp-eval
Replace elisp* with elisp-eval
Joel Martin [Wed, 15 Jun 2016 14:48:26 +0000 (09:48 -0500)]
Merge pull request #221 from dubek/js-interop
js: Fix interop, update web REPL page
Vasilij Schneidermann [Wed, 15 Jun 2016 07:43:50 +0000 (09:43 +0200)]
Replace elisp* with elisp-eval, use rx in test
Dov Murik [Wed, 15 Jun 2016 03:21:38 +0000 (23:21 -0400)]
js: Fix interop, update web REPL page
* js* renamed to js-eval and is no longer a special form (just a normal
function in core.js)
* . is no longer a special form (just a normal function in core.js)
* fixed object/method parsing of first argument to .
* added tests for .
* updated mal.html: "Mal at a glance" shows all Mal functions
Joel Martin [Mon, 13 Jun 2016 15:27:15 +0000 (10:27 -0500)]
Merge pull request #218 from dubek/io-interop
io: Add interop function io-eval
Joel Martin [Mon, 13 Jun 2016 15:25:29 +0000 (10:25 -0500)]
Merge pull request #219 from hinrik/perl6_eval_tests
Add tests for perl6-eval function
Joel Martin [Mon, 13 Jun 2016 15:25:04 +0000 (10:25 -0500)]
Merge pull request #220 from dubek/test-case-sensitive
tests: Verify case sensitivity of names and strings
Dov Murik [Mon, 13 Jun 2016 05:09:56 +0000 (01:09 -0400)]
tests: Verify case sensitivity of names and strings
Dov Murik [Sun, 12 Jun 2016 02:47:27 +0000 (22:47 -0400)]
io: Add interop function io-eval
Joel Martin [Sun, 12 Jun 2016 18:44:15 +0000 (13:44 -0500)]
Merge pull request #216 from hinrik/add_perl6_impl
Perl 6: Throw exception on missing ), ], or }
Joel Martin [Sun, 12 Jun 2016 18:43:23 +0000 (13:43 -0500)]
Merge pull request #217 from dubek/lua-interop
Add Lua interop and describe interop in the guide
Hinrik Örn Sigurðsson [Sun, 12 Jun 2016 14:20:27 +0000 (14:20 +0000)]
Add tests for perl6-eval function
Dov Murik [Sun, 12 Jun 2016 01:36:01 +0000 (21:36 -0400)]
process/guide: Describe interop function quux-eval
Dov Murik [Sun, 12 Jun 2016 01:30:44 +0000 (21:30 -0400)]
lua: Add interop core function lua-eval
Hinrik Örn Sigurðsson [Sat, 11 Jun 2016 19:50:39 +0000 (19:50 +0000)]
Perl 6: Throw exception on missing ), ], or }
Joel Martin [Sat, 11 Jun 2016 18:38:57 +0000 (13:38 -0500)]
Merge pull request #215 from hinrik/add_perl6_impl
Add Perl 6 implementation
Hinrik Örn Sigurðsson [Wed, 8 Jun 2016 16:15:53 +0000 (16:15 +0000)]
Test the Perl 6 implementation on Travis
Hinrik Örn Sigurðsson [Tue, 7 Jun 2016 09:16:48 +0000 (09:16 +0000)]
Add perl6-eval interop function
Hinrik Örn Sigurðsson [Mon, 6 Jun 2016 21:11:29 +0000 (21:11 +0000)]
Add Perl 6 implementation
All tests pass, but readline support (via Linenoise module) is commented
out in step0_repl.pl as it is not a core module. Should maybe change it
when docker support is added.
Joel Martin [Wed, 8 Jun 2016 18:29:59 +0000 (13:29 -0500)]
Makefile: user specified TEST_OPTS take precedence.
runtest uses argparse so the later arguments will take precedence.
Joel Martin [Mon, 6 Jun 2016 19:22:00 +0000 (13:22 -0600)]
Merge pull request #214 from rhysd/crystal-0.17.4
Crystal: Fix steps for Crystal v0.17.4
rhysd [Mon, 6 Jun 2016 17:17:40 +0000 (02:17 +0900)]
Crystal: Fix steps for Crystal v0.17.4
Joel Martin [Mon, 6 Jun 2016 16:33:33 +0000 (11:33 -0500)]
plsql: disable until tests more reliably pass.
Joel Martin [Fri, 3 Jun 2016 15:20:28 +0000 (10:20 -0500)]
plsql: add oracle user in Dockerfile. Longer test startup,
Also, fix repeated test options in top-level Makefile.
Joel Martin [Thu, 2 Jun 2016 17:57:34 +0000 (12:57 -0500)]
plsql: disable until uid 1001 issue resolved.
Joel Martin [Thu, 2 Jun 2016 17:44:36 +0000 (12:44 -0500)]
plsql: enable travis build.
Joel Martin [Tue, 24 May 2016 03:41:29 +0000 (21:41 -0600)]
plsql: add run script.
Joel Martin [Wed, 4 May 2016 05:45:01 +0000 (00:45 -0500)]
plsql: fix normal user/sudo startup of container.
Joel Martin [Wed, 4 May 2016 05:38:02 +0000 (00:38 -0500)]
*sql: update Makefiles, README. Logon override.
Joel Martin [Wed, 4 May 2016 04:25:41 +0000 (23:25 -0500)]
plsql: add dockerfile. Lots of cleanup/renaming.
Joel Martin [Wed, 4 May 2016 03:29:07 +0000 (22:29 -0500)]
plsql: Fix readline/output async. Improve arg mode.
Joel Martin [Tue, 3 May 2016 05:28:33 +0000 (00:28 -0500)]
plsql: self-hosting. Long strings, refactor io.
Joel Martin [Tue, 3 May 2016 04:56:48 +0000 (23:56 -0500)]
plsql: keyword/vector/hash-map. Other deferrables.
Joel Martin [Fri, 29 Apr 2016 05:11:59 +0000 (00:11 -0500)]
plsql: stepA basics. Fix step6 argument processing.
Joel Martin [Fri, 29 Apr 2016 03:36:24 +0000 (22:36 -0500)]
plsql: add step9 basics. Refactor arg list passing.
Joel Martin [Thu, 7 Apr 2016 06:22:15 +0000 (01:22 -0500)]
plsql: refactor with memory pool. step5,7,8 basics.
Ran into the same problem with macroexpand that prevented TCO in
step5. Apparently objects as parameters cannot be re-assigning (or
copied and re-assigned even) in a loop. When trying to do so, the
server process crashes with a memory error.
Move away from try to allocate and pass full structures around.
Instead pass integer references into a memory pool of the objects
(nested table of mal objects) and then pass this memory pool around by
reference. Passing the memory pool around all over the place is ugly,
but it allows TCO and macroexpand to work at all and seems to have
better performance anyways.
Joel Martin [Wed, 6 Apr 2016 05:48:26 +0000 (00:48 -0500)]
plsql: step6 basics. File I/O in io.sql and wrap.sh
Joel Martin [Tue, 5 Apr 2016 06:29:14 +0000 (01:29 -0500)]
plsql: step4 basics.
Joel Martin [Tue, 5 Apr 2016 04:37:52 +0000 (23:37 -0500)]
plsql: step2,3 basics.
Joel Martin [Fri, 1 Apr 2016 02:29:47 +0000 (21:29 -0500)]
plsql (Oracle PL/SQL): Copy plpgsql. Step0,1 basics.
Joel Martin [Wed, 18 May 2016 04:37:26 +0000 (21:37 -0700)]
Refactor to use run scripts, remove *_RUNSTEP
- Add */run script for every implementation.
- Refactor Clojure build to allow individual jar files for each step.
- Update FFI version for es6 and miniMAL to work with newer node
versions.
The run scripts for the following could use some additional
refactoring:
- java: build individual step jar, use java -jar instead of mvn to run
- plpgsql: maybe combine plpgsql/run and plpgsql/wrap.sh
- vhdl: combine vhdl/run and vhdl/run_vhdl.sh
- vimscript: combine vimscript/run and vimscript/run_vimscript.sh
Joel Martin [Tue, 17 May 2016 17:08:38 +0000 (12:08 -0500)]
Merge pull request #212 from dubek/argv-testing
tests: Test *ARGV* is set correctly in step 6
Dov Murik [Mon, 16 May 2016 15:25:42 +0000 (11:25 -0400)]
scala: Run steps directly from jar file
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).
Dov Murik [Sun, 15 May 2016 04:05:09 +0000 (00:05 -0400)]
make: Clean script output; skip test for command-line argument with spaces
Add --no-print-directory to make implementation execution so it only
prints the actual output from a Mal script.
Alos, since the make implementation can't handle spaces in a
command-line argument, we skip this test.
Dov Murik [Sun, 15 May 2016 03:54:07 +0000 (23:54 -0400)]
matlab: Add 'run' script to handle command-line args
The 'run' wrapper script escapes and creates the proper matlab/octave
command-line, replacing definitions from the main Makefile.
Dov Murik [Sun, 15 May 2016 03:42:58 +0000 (23:42 -0400)]
java: Add 'run' script which quotes arguments correctly
Vasilij Schneidermann [Sat, 14 May 2016 01:02:07 +0000 (03:02 +0200)]
Implement step 5
Dov Murik [Fri, 13 May 2016 14:17:00 +0000 (10:17 -0400)]
io: Add wrapper to swallow startup message from Io interpreter
The `io/run` script will run the io interpreter on a step file given in
the `$STEP` environment variable. It'll swallow the first 25 bytes
printed by the interpreter because they are a startup message about the
Io Regex module (and can't be suppressed in a normal way).
Joel Martin [Thu, 12 May 2016 21:30:57 +0000 (16:30 -0500)]
Merge pull request #213 from dubek/time-ms-fixes
cpp, erlang: time-ms fixes
Vasilij Schneidermann [Thu, 12 May 2016 18:04:22 +0000 (20:04 +0200)]
Use truthiness constants
Dov Murik [Thu, 12 May 2016 12:51:19 +0000 (08:51 -0400)]
factor: Set *ARGV* and run command-line script correctly in step6-stepA
Vasilij Schneidermann [Thu, 12 May 2016 08:01:09 +0000 (10:01 +0200)]
Implement step 4
Dov Murik [Wed, 11 May 2016 20:29:33 +0000 (16:29 -0400)]
r: Fix setting *ARGV*
Dov Murik [Wed, 11 May 2016 20:11:18 +0000 (16:11 -0400)]
js: Fix setting *ARGV* in step6 & step7
Dov Murik [Wed, 11 May 2016 20:01:15 +0000 (16:01 -0400)]
fsharp: When executing a mal script, don't print the final return value
Dov Murik [Wed, 11 May 2016 19:53:42 +0000 (15:53 -0400)]
erlang: Fix time-ms to return milliseconds since epoch
Dov Murik [Wed, 11 May 2016 19:52:55 +0000 (15:52 -0400)]
cpp: Make integer values 64-bit so they can holds time-ms values
Dov Murik [Wed, 11 May 2016 19:51:22 +0000 (15:51 -0400)]
erlang: When executing a mal script, don't print the final return value
Dov Murik [Wed, 11 May 2016 19:50:19 +0000 (15:50 -0400)]
cpp: When executing a mal script, don't print the final return value
Dov Murik [Wed, 11 May 2016 19:48:21 +0000 (15:48 -0400)]
ocaml: Remove debug prints in step6 & step7
Dov Murik [Tue, 10 May 2016 19:28:29 +0000 (15:28 -0400)]
tests: Test *ARGV* is set correctly in step 6
Add new mini test harness run_argv_test.sh to run the Mal interpreter
with different command-line arguments and test the stdout of that
process.
The main Makefile will automatically run the new harness whenever step 6
is tested (either directly or during REGRESS=1 of a more advanced step).
Joel Martin [Wed, 11 May 2016 14:03:50 +0000 (09:03 -0500)]
Merge pull request #211 from dubek/racket-fix-argv
racket: Set *ARGV* correctly