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

44 Commits

Author SHA1 Message Date
Joel Martin
4c14a8b835 bash, c, clojure, coffee, es6, js: add seq/string?
Issue #166.
2016-02-11 09:18:46 -06:00
Dov Murik
8d1e25ac24 coffee, es6, js, perl, python, ruby: Fix (first nil) and (rest nil) 2016-02-03 21:23:46 -05:00
Joel Martin
411abc90f4 Merge pull request #146 from dubek/fix-macro-eval
Fix macro eval in 24 impls
2016-01-26 14:16:55 -06:00
Dov Murik
bfa3dd3593 coffee, es6, js, mal, miniMAL: fix macro result evaluation
Issue #142
2016-01-25 21:22:21 -05:00
Dov Murik
48572759b7 Add gensym and clean or macro to stepA of 12 implementations (part 1)
* go
* guile
* js
* mal
* miniMAL
* ocaml
* ps
* python
* racket
* ruby
* tcl
* vimscript
2016-01-23 00:31:51 -05:00
Dov Murik
3dcaa6ce43 js: Fix exception in `(nil) 2015-12-28 10:22:58 +02:00
Joel Martin
a0b63ee477 hash-map equality: bash, c, coffee, cs, es6, ...
- hash-map equality support for bash, c, coffee, cs, es6, java, js,
  julia, make, php.
- also, add another test to catch another hash-map in-equality: same
  keys, different values
2015-11-16 23:28:58 -06:00
Joel Martin
8d78bc26bf All: fix read/print of \\, and \n 2015-10-30 22:05:49 -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
Joel Martin
e152d48827 travis: add bash, c, make to test matrix. 2015-10-05 18:55:00 -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
Joel Martin
3858f4e6c9 README.md count to 38. JS and ES6 build fixes. 2015-08-06 15:47:39 -05:00
Joel Martin
dbac60df00 All: move metadata, atoms, readline, conj to stepA.
- Move some of the more optional things (conj, readline) to stepA. All
  implementations pass step9 tests now.
- Move metadata and atoms to stepA.
- Update step9 and stepA diagrams.
2015-03-14 17:17:14 -05:00
Joel Martin
c9de2e82ed Tests: add testing Dockerfile. Impl fixes.
- tests/docker/Dockerfile: specifies full docker image containing all
  tools/languages (except matlab).
- tests/docker-build.sh: build above image.
- tests/docker-run.sh: launch above image.
    Example: ./tests/docker-run.sh make test^js^step2
- Various fixes across multiple languages:
    - Unicode fixes for bash and R on Ubuntu Utopic
    - readline history fixes for when ~/.mal-history is not available
      or readable/writable. No fatal errors.
    - fixes to work with perl 5.20 (and still perl 5.18)
2015-03-11 22:22:35 -05:00
Joel Martin
10b07148ba All step0: add test, fix bugs, remove step0 eval. 2015-03-07 09:04:07 -06:00
Joel Martin
90f618cbe7 All: rename stepA_interop to stepA_mal
Also, add missed postscript interop tests.
2015-02-28 11:09:54 -06:00
Joel Martin
2ab1e5845c Multiple: interop enhancements. 2015-02-28 10:35:04 -06:00
Joel Martin
3fb3743ff4 miniMAL: add classOf and fix printing. 2015-02-25 23:01:16 -06:00
Joel Martin
b8ee29b22f All: add keywords.
Also, fix nth and count to match cloure.
2015-01-09 16:16:50 -06:00
Joel Martin
01c9731649 All: swap step9,A. Fixes for bash, C, perl.
step9_interop -> stepA_interop
stepA_more -> step9_try

C: fix glib headers
bash: behavior change of declare -A and pattern replacement.
perl: squelch new 5.18 warnings related to switch/given statement.

Also, include some in-progress interop related files.
2015-01-06 21:57:24 -06:00
Joel Martin
17e1c5f9f4 go: add step5_tco. Refactor env.
Move EnvType interface definition to types.go. Remove Env pointers.
2014-10-06 21:03:03 -05:00
Joel Martin
cc021efe10 Add step5/9 tests for impls that support it.
- Also remove broken make/tests/*.mk tests. Not used any more.
2014-04-27 17:58:48 -05:00
Joel Martin
b58698b257 JS: add localStorage history load/save. Slurp using sync XHR. 2014-04-27 16:55:31 -05:00
Joel Martin
a9993e0a68 JS web: use/import to Himera style web REPL. 2014-04-26 16:03:03 -05:00
Joel Martin
e439350417 JS: switch from josh.js console to jqconsole.
js/web/jqconsole.min.js and web/ansi.css are from
https://github.com/replit/jq-console and licensed MIT.
2014-04-26 14:19:49 -05:00
Joel Martin
e6a1697802 JS: Fix internal tests.
Thanks: Wes Brown <wesbrown18@gmail.com>.
2014-04-23 22:42:00 -05:00
Joel Martin
e18f93f507 Merge commit 'e47ddca2f8d80145386a377fc81a738d89c46cf0' 2014-04-23 22:03:45 -05:00
Joel Martin
6301e0b637 All: TCO let* and quasiquote. 2014-04-23 21:59:50 -05:00
Wes Brown
e47ddca2f8 Automatically install node modules if the directory doesn't exist. 2014-04-22 12:44:26 -04:00
Wes Brown
4cd2926224 Correct issue where readline bombs out if there's no existing history file. 2014-04-22 12:40:20 -04:00
Joel Martin
a5a6605877 Perl: add step4_if_fn_do
- Move string/printing tests to the bottom of tests/step4_if_fn_do
2014-04-20 23:45:58 -05:00
Joel Martin
86b689f3d7 All: *ARGV* and *host-language*. Misc syncing/fixes. 2014-04-19 13:04:09 -05:00
Joel Martin
db4c329aff All: perf test, Makefile refactor, add *host-language*
Other:
- bash,make,postscript: quasiquote of vectors
- Fix Java slurp
- add time function to core.mal
    - switches on *host-language* for make time-secs vs time-ms
- Ignore */experiments directories
2014-04-17 21:49:07 -05:00
Joel Martin
8cb5cda46c All: move some fns to core. Major cleanup.
- Don't import/require core until step4.
- Define cond/or macros from step8
2014-04-16 23:57:50 -05:00
Joel Martin
7e9a2883fe All: fix get. All pass stepA tests. 2014-04-15 01:24:43 -05:00
Joel Martin
8adb082743 Java, JS: cleanup and sync steps.
- Java: less direct use of obj.value attribute.
2014-04-13 15:36:02 -05:00
Joel Martin
712af9efbe Add stats-lisp target (only env, core, stepA) 2014-04-10 19:27:42 -05:00
Joel Martin
a34b020065 Fix metadata on functions.
- Don't use metadata to store ast, env, params data.
- In Clojure, store metadata on the :meta key of the real metadata.
  This also allows using any datatype as metadata.
2014-04-09 23:58:27 -05:00
Joel Martin
31b4416181 JS: fix web interface. 2014-04-06 16:40:55 -05:00
Joel Martin
ea81a8087b All: split types into types, env, printer, core.
- types: low-level mapping to the implementation language.
- core: functions on types that are exposed directly to mal.
- printer: implementation called by pr-str, str, prn, println.
- env: the environment implementation

- Also, unindent all TCO while loops so that the diff of step4 and
  step5 are minimized.
2014-04-02 22:23:37 -05:00
Joel Martin
1617910ad3 All: remove slurp-do, use str around slurp instead. 2014-04-01 23:12:33 -05:00
Joel Martin
9528bb1451 All: pass stepA tests, in particular with correct conj behavior. 2014-04-01 22:50:55 -05:00
Joel Martin
3169070063 Current state of mal for Clojure West lighting talk. 2014-03-24 16:32:24 -05:00