1
1
mirror of https://github.com/kanaka/mal.git synced 2024-09-20 18:18:51 +03:00
Commit Graph

131 Commits

Author SHA1 Message Date
Chris M Moore
adc03a1a5f Update from master 2016-03-20 21:37:07 +00:00
Joel Martin
f2b067cbd8 miniMAL: increase test timeouts 2016-03-15 11:19:51 -05:00
Joel Martin
dca6b58578 Tests: move step5 non-TCO tests to per impl.
- Remove most of the step5 excludes in the Makefile except for ones
  which don't have TCO capability at all (or the implementation is too
  slow): bash, make, mal, matlab.

- Make perf_EXCLUDES consistent with other excludes.

- Add a print-FOO target which prints the resolved value of Makefile
  variable FOO. For example, `make print-IMPLS` to print the list of
  implementations.
2016-03-14 23:39:21 -05:00
Joel Martin
0067158f6d Object Pascal: full implementation. Test cleanup.
- Move vector related step4 and step6 tests to optional.
- Fix two step9 tests that weren't checking return value.
2016-03-13 17:12:01 -05:00
Joel Martin
5b207de75e Makefile/README documentation. Build rules.
- Also, general cleanup/commenting of toplevel Makefile.
2016-03-07 23:33:45 -06:00
Joel Martin
4959b19df6 Makefile: add DOCKERIZE support. 2016-03-07 21:59:16 -06:00
Dov Murik
3da6f492d8 io: step5 2016-03-07 08:58:29 -05:00
Dov Murik
7511317b6c io: step0 2016-03-07 08:55:12 -05:00
Joel Martin
2faae94c0a Objective-C: OS X: build, read_atom, str comp., etc.
Also, fix designated init warnings. Note in README that OS X XCode
7 is also supported.
2016-03-06 01:24:16 -06:00
Vasilij Schneidermann
671c0e1c72 Merge branch 'master' into elisp 2016-03-02 01:01:43 +01:00
Vasilij Schneidermann
ae28e856fb Implement step 0 2016-02-28 21:21:38 +01:00
Joel Martin
bcfd8b7020 Generic recursive rules for dist, stats, clean
Also add missing clean rules for julia and matlab and fix perl clean
rule.
2016-02-24 01:09:19 -06:00
Joel Martin
5245b079e1 Add dist targets to most implementations.
TODO: factor groovy guile julia matlab miniMAL swift
2016-02-24 00:33:20 -06:00
Joel Martin
b6dc3e37aa awk-es6, Makefile: dist ruiles 2016-02-24 00:33:20 -06:00
Joel Martin
0eace3df1f swift3: steps6-A, vectors, maps, keywords, meta.
Everything except conj and meta on lists, vectors and hash-maps.
2016-02-24 00:27:23 -06:00
Chris M Moore
dfc660a4cd Merged master into ada branch + fix Makefile 2016-02-21 14:31:37 +00:00
Joel Martin
56be4ef0ee Merge branch 'Haxe' 2016-01-26 15:54:15 -06:00
Joel Martin
36e287b51f cs, fsharp, java, vb: fix macro result evaluation.
Related to issue #142.

- also, fix java build issue in both Makefiles.
2016-01-26 14:13:59 -06:00
Joel Martin
32d0a1cfdb Haxe: add C++, JS, Neko targets. Make neko default. 2016-01-25 23:37:47 -06:00
Joel Martin
6c4c14bd8a Haxe: step0 and step1. 2016-01-08 21:18:41 -06:00
Joel Martin
4769962955 matlab: support Octave 4.0.0
- Workarounds for Octave 4.0.0:
    - no containers.Map yet so use new Dict
      structure when running under Octave.
    - weird error when +FOO/ directory and FOO.m file both exist so
      rename types.m to type_utils.m
    - no getReport so implement custom stack printer
    - workaround weird issue that happens when a class initializer is
      called with the first argument of the same class as per
      Env(outer, ...). The class is not properly initialized. So for
      now, wrap the outer in a cell as Env({outer}, ...)
    - missing MException object types so when in Octave, use a global
      variable to store the error object.
    - missing native2unicode so just use 0xff character for keyword
      prefix.
    - workaround some function calling/passing differences. For
      example, the "@" anonymous function symbol does not seem to work
      for conveying an existing function but only for defininign a new
      one. E.g. this works:
          @(a,b) a+b
      but this doesn't
          @my_adder_fn.
      so just do this:
          @(a,b) my_adder_fn(a,b)

- Add Dockerfile with Octave

- Active Travis for matlab implementation using Octave
2015-12-31 13:55:18 -06:00
Joel Martin
17180e8583 Makefile: add REGRESS functionality
- Fixes #107
2015-12-18 17:24:02 -06:00
Dov Murik
854cf2a6ba Makefile: add REPL invocation rules 2015-12-14 08:50:27 -05:00
Dov Murik
f82cb96552 D implementation 2015-12-02 15:53:02 -05:00
Joel Martin
f045aba128 Makefile: fix recursive make of compiled impls.
Should fix #105
2015-11-18 16:32:53 -06:00
Dov Murik
576ef3703a tcl: add --raw flag to allow running without Readline
The Readline library for Tcl (tclreadline) enables history
substitutions, which means that lines that begin with `^` or `!` are
preprocessed by readline.  This interferes with some step1 tests of the
`^` form (--> with-meta).

Now the Tcl implementation supports a `--raw` command line flag which
disables the readline library and opts for simple input from stdin. The
tests (Makefile) are run with `--raw`.
2015-11-10 13:11:49 -05:00
Dov Murik
54d9903c0c Tcl implementation 2015-11-09 22:15:15 -05:00
John Benediktsson
d1596ac242 factor: update FACTOR_ROOTS in Makefile. 2015-10-29 08:27:24 -07:00
John Benediktsson
199b1ce7b2 factor: update code.
* Works on soon-to-be-released 0.98 (triple quote strings removed)
* 50% more iterations per second on perf3.mal
* Removed 'src' directory, use 'factor' as the root
* Using 'mal' namespace for core, reader, printer, malenv, types
* Fixed issue with "empty" readline input (should be ignored and wasn't)
* Tried to simplify some of the code
2015-10-28 16:20:59 -07:00
Javier Fernandez-Ivern
105c46f181 Updated from master, solved conflicts 2015-10-26 23:14:04 -05:00
Joel Martin
f15b4021db All: show comments with stats target.
- Put guile into correct alphabetical order.
2015-10-26 22:33:49 -05:00
Javier Fernandez-Ivern
c57f1cbb96 Merge remote-tracking branch 'kanaka/master' into kotlin 2015-10-26 20:27:42 -05:00
Javier Fernandez-Ivern
53c2ea70cf Implemented Kotlin MAL up to step 4 2015-10-24 22:10:53 -05:00
Joel Martin
8248463181 Julia: update to verion 0.4. Add time-ms. 2015-10-24 15:41:22 -05:00
Dov Murik
50a964ce14 Vimscript implementation 2015-10-20 15:04:04 -04:00
Joel Martin
406761e769 ps: fix self-host and runtest.py parsing issue.
- make sure readline has large enough string for steps2-A
- fix keyword? so that it doesn't leave anything extra on the stack
- fix argparse command line parsing so that that the second '--' on
  the command line is not dropped.
2015-10-12 22:14:45 -05:00
Joel Martin
922d4c3b9b Makefile and tests/step4: Self-host test fixes.
- Always use stepA for the RUNSTEP macro in addition to the
  STEP_TO_PROG macro.
- Disable the (fib 10) test because this is really too slow for
  several self-hosted implementations to complete before a timeout.
2015-10-11 22:10:59 -05:00
Joel Martin
337c80310c guile: fix regex with unicode bug. 2015-10-09 11:15:26 -05:00
Joel Martin
fc4c7889cb Travis: add remaining implementations.
- new impls: awk, crystal, elixir, erlang, es6, fsharp, groovy, guile
  (disabled), rpython (disabled)
2015-10-07 21:46:12 -05:00
Joel Martin
f7824465dc Another travisCI attempt for JS and python (matrix). 2015-10-05 17:25:48 -05:00
Joel Martin
cf1d3eae66 Add .travis.yml and js/Dockerfile
- .travis.yml: currently pulls js docker image and runs tests for js
  impl only.
2015-10-05 16:46:21 -05:00
ekmartin
df2ca97b82 Update Elixir build method 2015-09-10 22:10:40 +02:00
ekmartin
bb52697591 Update README/Makefile/Dockerfile 2015-09-10 01:47:55 +02:00
ekmartin
d88bc83145 Make sure eval of do is in tail position and skip step 5 2015-09-06 14:59:45 +02:00
ekmartin
51c2c1fea7 Add elixir step0 2015-09-03 00:08:25 +02:00
Mitsuru Kariya
3b7ef8c720 rename directory 2015-08-26 10:13:25 +09:00
Mitsuru Kariya
8c7587af67 Adds GNU awk implementaion 2015-08-26 00:46:31 +09:00
Joel Martin
4eb719905f ES6: step0 and step1 basics. 2015-07-30 21:15:55 -05:00
Peter Stephens
22ded92c88 Merge remote-tracking branch 'kanaka/master' into fsharp
Conflicts:
	.gitignore
	Makefile
2015-07-05 21:28:20 -05:00
Joel Martin
4fc7a281be Makefile: add generic top-level impl build rule.
This will attempt to build the program in the implementation directory
when, for example `make test^step1` is invoked. This was true for
c and cpp, but now the rule is generic.
2015-06-16 10:23:12 -05:00