jackhill/mal.git
9 years agoMove template to top level. Add license.
Joel Martin [Fri, 9 Jan 2015 04:56:12 +0000 (22:56 -0600)]
Move template to top level. Add license.

Also, cleanup TODO a bit.

9 years agoTODO: misc cleanup.
Joel Martin [Wed, 7 Jan 2015 03:03:04 +0000 (21:03 -0600)]
TODO: misc cleanup.

9 years agoPython: fix python3 support with keywords.
Joel Martin [Wed, 7 Jan 2015 02:58:33 +0000 (20:58 -0600)]
Python: fix python3 support with keywords.

9 years agoClojure: only load readline history once.
Joel Martin [Wed, 7 Jan 2015 02:55:35 +0000 (20:55 -0600)]
Clojure: only load readline history once.

9 years agoMake: refactor number type. Support large numbers.
Joel Martin [Sun, 4 Jan 2015 21:47:20 +0000 (15:47 -0600)]
Make: refactor number type. Support large numbers.

- Can support numbers up to 100 decimal digits in length.
- Still no support for negative numbers or floating point.
- Change time-secs to time-ms and remove conditional in perf.mal

9 years agoRacket: add readline/line edit support.
Joel Martin [Sat, 3 Jan 2015 05:55:11 +0000 (23:55 -0600)]
Racket: add readline/line edit support.

9 years agoMisc cleanup. Move *host-language* to stepA.
Joel Martin [Sat, 3 Jan 2015 05:33:50 +0000 (23:33 -0600)]
Misc cleanup. Move *host-language* to stepA.

9 years agoRacket: add steps0-A. Self-hosting.
Joel Martin [Sat, 3 Jan 2015 05:20:00 +0000 (23:20 -0600)]
Racket: add steps0-A. Self-hosting.

- Some additioanl tests.
- Split step9 tests into optional but self-hosting requirements
  (metadata on functions) and other optional (conj, metadata on
  collections).

9 years agoHaskell: add error handling and try*/catch*.
Joel Martin [Thu, 25 Dec 2014 06:17:38 +0000 (23:17 -0700)]
Haskell: add error handling and try*/catch*.

Achieve self-hosting!

9 years agoHaskell: Add steps9-A, metadata, and atoms.
Joel Martin [Thu, 25 Dec 2014 04:51:23 +0000 (21:51 -0700)]
Haskell: Add steps9-A, metadata, and atoms.

Some refactoring of Core.hs to make better use of pattern matching.

Only remaining thing is exception handling (generic try/throw).

9 years agoHaskell: add step7 and 8.
Joel Martin [Wed, 24 Dec 2014 06:49:23 +0000 (23:49 -0700)]
Haskell: add step7 and 8.

9 years agoHaskell: steps 4-6. Line editing. Simpler fn calls.
Joel Martin [Wed, 24 Dec 2014 05:37:43 +0000 (22:37 -0700)]
Haskell: steps 4-6. Line editing. Simpler fn calls.

9 years agoHaskell: steps 0-3
Joel Martin [Wed, 24 Dec 2014 03:35:48 +0000 (20:35 -0700)]
Haskell: steps 0-3

9 years agoScala: refactor collections with metadata.
Joel Martin [Fri, 19 Dec 2014 05:52:59 +0000 (23:52 -0600)]
Scala: refactor collections with metadata.

Convert numeric to Long. Add time-ms.

Add Makefile for stats targets.

9 years agoScala: all steps 0-9 but no metadata.
Joel Martin [Fri, 19 Dec 2014 05:21:39 +0000 (23:21 -0600)]
Scala: all steps 0-9 but no metadata.

9 years agoAll: add keywords.
Joel Martin [Fri, 19 Dec 2014 02:33:49 +0000 (20:33 -0600)]
All: add keywords.

Also, fix nth and count to match cloure.

9 years agoVB.Net, C#: fix cmd line arg handling with --raw
Joel Martin [Sun, 16 Nov 2014 05:51:59 +0000 (23:51 -0600)]
VB.Net, C#: fix cmd line arg handling with --raw

9 years agoVB.Net: port of C# version.
Joel Martin [Sun, 16 Nov 2014 05:15:09 +0000 (23:15 -0600)]
VB.Net: port of C# version.

9 years agoC#: use closure for RE func. Shorter type names.
Joel Martin [Sun, 16 Nov 2014 02:38:50 +0000 (20:38 -0600)]
C#: use closure for RE func. Shorter type names.

9 years agoCoffeeScript: add missed node_readline.coffee
Joel Martin [Sun, 16 Nov 2014 05:53:58 +0000 (23:53 -0600)]
CoffeeScript: add missed node_readline.coffee

9 years agoCoffeeScript: add all steps. Self-hosting.
Joel Martin [Sat, 8 Nov 2014 22:56:36 +0000 (16:56 -0600)]
CoffeeScript: add all steps. Self-hosting.

9 years agoR: add time-ms. Readline history. Misc cleanups.
Joel Martin [Tue, 4 Nov 2014 05:50:55 +0000 (23:50 -0600)]
R: add time-ms. Readline history. Misc cleanups.

9 years agoR: atom support, fixes for self-hosting.
Joel Martin [Tue, 4 Nov 2014 04:29:51 +0000 (22:29 -0600)]
R: atom support, fixes for self-hosting.

9 years agoR: add hash-map and metadata support.
Joel Martin [Tue, 4 Nov 2014 03:19:13 +0000 (21:19 -0600)]
R: add hash-map and metadata support.

9 years agoR: add step8_macros and step9_try.
Joel Martin [Tue, 4 Nov 2014 02:32:46 +0000 (20:32 -0600)]
R: add step8_macros and step9_try.

9 years agoR: add step6_file and step7_quote
Joel Martin [Tue, 4 Nov 2014 02:02:09 +0000 (20:02 -0600)]
R: add step6_file and step7_quote

Change symbols to be special class.

9 years agoR: add step4_if_fn_do and step5_tco.
Joel Martin [Mon, 3 Nov 2014 03:32:33 +0000 (21:32 -0600)]
R: add step4_if_fn_do and step5_tco.

Switch nil from NULL to special class.

9 years agoR: step0-3, readline FFI.
Joel Martin [Sat, 1 Nov 2014 20:54:48 +0000 (15:54 -0500)]
R: step0-3, readline FFI.

9 years agoMerge pull request #2 from alandipert/master
Joel Martin [Thu, 8 Jan 2015 17:53:00 +0000 (11:53 -0600)]
Merge pull request #2 from alandipert/master

README: tiny typo fix

9 years agotiny typo fix
Alan Dipert [Thu, 8 Jan 2015 17:47:14 +0000 (12:47 -0500)]
tiny typo fix

9 years agorust: update README. Remove exp.rs compilation.
Joel Martin [Tue, 28 Oct 2014 04:52:41 +0000 (23:52 -0500)]
rust: update README. Remove exp.rs compilation.

9 years agogo: add time-ms. Ruby: fix step9,A content.
Joel Martin [Tue, 28 Oct 2014 04:49:55 +0000 (23:49 -0500)]
go: add time-ms. Ruby: fix step9,A content.

9 years agorust: fix quote/quasiquote of vectors.
Joel Martin [Tue, 28 Oct 2014 04:49:11 +0000 (23:49 -0500)]
rust: fix quote/quasiquote of vectors.

9 years agorust: add conj, stepA. Self-hosting!
Joel Martin [Tue, 28 Oct 2014 04:20:22 +0000 (23:20 -0500)]
rust: add conj, stepA. Self-hosting!

9 years agorust: add metadata support.
Joel Martin [Tue, 28 Oct 2014 03:39:31 +0000 (22:39 -0500)]
rust: add metadata support.

9 years agorust: add atom support. Fix vector params.
Joel Martin [Tue, 28 Oct 2014 02:42:46 +0000 (21:42 -0500)]
rust: add atom support. Fix vector params.

9 years agorust: core hash-map functions.
Joel Martin [Tue, 28 Oct 2014 02:13:50 +0000 (21:13 -0500)]
rust: core hash-map functions.

9 years agorust: add step9_try. Refactor error handling.
Joel Martin [Tue, 28 Oct 2014 01:45:27 +0000 (20:45 -0500)]
rust: add step9_try. Refactor error handling.

Additional core functions.

9 years agorust: add vector and hash-map support.
Joel Martin [Tue, 28 Oct 2014 01:07:29 +0000 (20:07 -0500)]
rust: add vector and hash-map support.

9 years agorust: add step8_macros
Joel Martin [Mon, 27 Oct 2014 23:13:45 +0000 (18:13 -0500)]
rust: add step8_macros

9 years agorust: add step7_quote. Refactor with type constructors.
Joel Martin [Sat, 25 Oct 2014 21:51:52 +0000 (16:51 -0500)]
rust: add step7_quote. Refactor with type constructors.

9 years agorust: add step6_file
Joel Martin [Sat, 25 Oct 2014 21:28:32 +0000 (16:28 -0500)]
rust: add step6_file

9 years agorust: add step5_tco
Joel Martin [Sat, 25 Oct 2014 21:18:32 +0000 (16:18 -0500)]
rust: add step5_tco

9 years agorust: add step4_if_fn_do
Joel Martin [Sat, 25 Oct 2014 19:02:42 +0000 (14:02 -0500)]
rust: add step4_if_fn_do

9 years agoRust: add step3_env
Joel Martin [Sat, 25 Oct 2014 18:00:01 +0000 (13:00 -0500)]
Rust: add step3_env

9 years agorust: add step2_eval.
Joel Martin [Sat, 25 Oct 2014 17:41:24 +0000 (12:41 -0500)]
rust: add step2_eval.

9 years agoRust: step0_repl and step1_read_print
Joel Martin [Sat, 25 Oct 2014 16:42:07 +0000 (11:42 -0500)]
Rust: step0_repl and step1_read_print

9 years agoDoc cleanup of step9/stepA swap.
Joel Martin [Fri, 10 Oct 2014 04:58:22 +0000 (23:58 -0500)]
Doc cleanup of step9/stepA swap.

9 years agoGo: add missing env.go
Joel Martin [Fri, 10 Oct 2014 04:54:08 +0000 (23:54 -0500)]
Go: add missing env.go

9 years agoAll: swap step9,A. Fixes for bash, C, perl.
Joel Martin [Fri, 10 Oct 2014 04:48:47 +0000 (23:48 -0500)]
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.

9 years agogo: update README. Backport Func usage.
Joel Martin [Fri, 10 Oct 2014 03:10:15 +0000 (22:10 -0500)]
go: update README. Backport Func usage.

9 years agogo: add metadata and atoms. HashMap dedicated type.
Joel Martin [Fri, 10 Oct 2014 02:37:00 +0000 (21:37 -0500)]
go: add metadata and atoms. HashMap dedicated type.

HashMap needs a dedicated type now to be able to store the metadata.

9 years agogo: add hash-map support.
Joel Martin [Fri, 10 Oct 2014 00:14:43 +0000 (19:14 -0500)]
go: add hash-map support.

9 years agogo: add readline.go that wraps libreadline/libedit
Joel Martin [Thu, 9 Oct 2014 23:27:47 +0000 (18:27 -0500)]
go: add readline.go that wraps libreadline/libedit

9 years agogo: add stepA_more. try* and more core functions.
Joel Martin [Thu, 9 Oct 2014 23:05:30 +0000 (18:05 -0500)]
go: add stepA_more. try* and more core functions.

9 years agogo: add step8_macros
Joel Martin [Tue, 7 Oct 2014 04:53:51 +0000 (23:53 -0500)]
go: add step8_macros

9 years agogo: add step7_quote
Joel Martin [Tue, 7 Oct 2014 04:31:11 +0000 (23:31 -0500)]
go: add step7_quote

9 years agogo: add step6_file
Joel Martin [Tue, 7 Oct 2014 03:27:28 +0000 (22:27 -0500)]
go: add step6_file

9 years agogo: add step5_tco. Refactor env.
Joel Martin [Tue, 7 Oct 2014 02:03:03 +0000 (21:03 -0500)]
go: add step5_tco. Refactor env.

Move EnvType interface definition to types.go. Remove Env pointers.

9 years agogo: add step4_if_fn_do
Joel Martin [Tue, 7 Oct 2014 01:36:23 +0000 (20:36 -0500)]
go: add step4_if_fn_do

9 years agogo: add step3_env
Joel Martin [Sun, 5 Oct 2014 04:40:43 +0000 (23:40 -0500)]
go: add step3_env

9 years agogo: step2_eval vector/hash-map in eval_ast
Joel Martin [Sun, 5 Oct 2014 04:16:19 +0000 (23:16 -0500)]
go: step2_eval vector/hash-map in eval_ast

9 years agogo: step2_eval basic functionality
Joel Martin [Sun, 5 Oct 2014 03:35:08 +0000 (22:35 -0500)]
go: step2_eval basic functionality

9 years agogo: step1_read_print vectors and hash-maps
Joel Martin [Sun, 5 Oct 2014 03:16:57 +0000 (22:16 -0500)]
go: step1_read_print vectors and hash-maps

9 years agogo: step1_read_print print working.
Joel Martin [Sun, 5 Oct 2014 02:49:26 +0000 (21:49 -0500)]
go: step1_read_print print working.

9 years agogo: reading of atoms and lists.
Joel Martin [Sun, 5 Oct 2014 01:06:42 +0000 (20:06 -0500)]
go: reading of atoms and lists.

9 years agostep0_repl.go: strip newline from input.
Joel Martin [Sun, 5 Oct 2014 00:53:11 +0000 (19:53 -0500)]
step0_repl.go: strip newline from input.

9 years agodocs/step_notes.txt: add step0_repl details.
Joel Martin [Sat, 4 Oct 2014 23:34:49 +0000 (18:34 -0500)]
docs/step_notes.txt: add step0_repl details.

9 years agogo: step0_repl
Joel Martin [Sat, 4 Oct 2014 23:34:26 +0000 (18:34 -0500)]
go: step0_repl

10 years agoTODO: misc updates
Joel Martin [Sat, 10 May 2014 21:58:23 +0000 (16:58 -0500)]
TODO: misc updates

10 years agoPS: include/run from same directory.
Joel Martin [Sat, 10 May 2014 21:29:07 +0000 (16:29 -0500)]
PS: include/run from same directory.

10 years agoPerl: include from same directory.
Joel Martin [Sat, 10 May 2014 21:03:25 +0000 (16:03 -0500)]
Perl: include from same directory.

10 years agoJava, Make: return nil from core readline function on EOF.
Joel Martin [Sat, 10 May 2014 20:46:15 +0000 (15:46 -0500)]
Java, Make: return nil from core readline function on EOF.

10 years agoBash: correctly treat commas as whitespace.
Joel Martin [Sat, 10 May 2014 20:45:36 +0000 (15:45 -0500)]
Bash: correctly treat commas as whitespace.

10 years agoMakefile: exclude test^mal^step0
Joel Martin [Sat, 10 May 2014 20:44:57 +0000 (15:44 -0500)]
Makefile: exclude test^mal^step0

10 years agoREADME.md: add linke to online demo.
Joel Martin [Sun, 27 Apr 2014 23:36:27 +0000 (18:36 -0500)]
README.md: add linke to online demo.

10 years agoAdd step5/9 tests for impls that support it.
Joel Martin [Sun, 27 Apr 2014 22:58:48 +0000 (17:58 -0500)]
Add step5/9 tests for impls that support it.

- Also remove broken make/tests/*.mk tests. Not used any more.

10 years agoJS: add localStorage history load/save. Slurp using sync XHR.
Joel Martin [Sun, 27 Apr 2014 21:55:31 +0000 (16:55 -0500)]
JS: add localStorage history load/save. Slurp using sync XHR.

10 years agoJS web: use/import to Himera style web REPL.
Joel Martin [Sat, 26 Apr 2014 21:03:03 +0000 (16:03 -0500)]
JS web: use/import to Himera style web REPL.

10 years agoJS: switch from josh.js console to jqconsole.
Joel Martin [Sat, 26 Apr 2014 19:19:49 +0000 (14:19 -0500)]
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.

10 years agoREADME: fix c# header, specify perl 5.8
Joel Martin [Thu, 24 Apr 2014 04:07:16 +0000 (23:07 -0500)]
README: fix c# header, specify perl 5.8

10 years agoREADME: instructions on running tests.
Joel Martin [Thu, 24 Apr 2014 03:59:41 +0000 (22:59 -0500)]
README: instructions on running tests.

10 years agoPerl: add Makefile and time-ms for perf tests.
Joel Martin [Thu, 24 Apr 2014 03:42:36 +0000 (22:42 -0500)]
Perl: add Makefile and time-ms for perf tests.

10 years agoJS: Fix internal tests.
Joel Martin [Thu, 24 Apr 2014 03:42:00 +0000 (22:42 -0500)]
JS: Fix internal tests.

Thanks: Wes Brown <wesbrown18@gmail.com>.

10 years agoPerl: line edit history.
Joel Martin [Thu, 24 Apr 2014 03:22:42 +0000 (22:22 -0500)]
Perl: line edit history.

10 years agoMerge commit 'e47ddca2f8d80145386a377fc81a738d89c46cf0'
Joel Martin [Thu, 24 Apr 2014 03:03:45 +0000 (22:03 -0500)]
Merge commit 'e47ddca2f8d80145386a377fc81a738d89c46cf0'

10 years agoAll: TCO let* and quasiquote.
Joel Martin [Thu, 24 Apr 2014 02:59:50 +0000 (21:59 -0500)]
All: TCO let* and quasiquote.

10 years agoPerl: add vector, hash-map, metadata, atom support. TCO let*
Joel Martin [Thu, 24 Apr 2014 02:46:57 +0000 (21:46 -0500)]
Perl: add vector, hash-map, metadata, atom support. TCO let*

- Changes all collections to be one level of inderection where the top
  level is always a hash containing 'meta' and 'val'.

10 years agoPerl: add step9_interop test
Joel Martin [Thu, 24 Apr 2014 01:30:33 +0000 (20:30 -0500)]
Perl: add step9_interop test

10 years agoPerl: add stepA_more.
Joel Martin [Wed, 23 Apr 2014 04:50:43 +0000 (23:50 -0500)]
Perl: add stepA_more.

10 years agoAutomatically install node modules if the directory doesn't exist.
Wes Brown [Tue, 22 Apr 2014 16:44:26 +0000 (12:44 -0400)]
Automatically install node modules if the directory doesn't exist.

10 years agoCorrect issue where readline bombs out if there's no existing history file.
Wes Brown [Tue, 22 Apr 2014 16:40:20 +0000 (12:40 -0400)]
Correct issue where readline bombs out if there's no existing history file.

10 years agoPerl: add step9_interop with type conversion.
Joel Martin [Tue, 22 Apr 2014 03:37:41 +0000 (22:37 -0500)]
Perl: add step9_interop with type conversion.

10 years agoPerl: step8_macros
Joel Martin [Tue, 22 Apr 2014 02:47:36 +0000 (21:47 -0500)]
Perl: step8_macros

- Fixes to core.pl: concat
- Fixes to types.pl: _symbol_Q, Function apply

10 years agoPerl: add step7_quote
Joel Martin [Tue, 22 Apr 2014 02:13:04 +0000 (21:13 -0500)]
Perl: add step7_quote

10 years agoPerl: step6_file
Joel Martin [Tue, 22 Apr 2014 01:48:16 +0000 (20:48 -0500)]
Perl: step6_file

10 years agoPerl: add step5_tco
Joel Martin [Tue, 22 Apr 2014 01:08:18 +0000 (20:08 -0500)]
Perl: add step5_tco

- Make all warnings fatal/exceptions.

10 years agoPerl: add step4_if_fn_do
Joel Martin [Mon, 21 Apr 2014 04:45:58 +0000 (23:45 -0500)]
Perl: add step4_if_fn_do

- Move string/printing tests to the bottom of tests/step4_if_fn_do

10 years agoPerl: add step3_env
Joel Martin [Mon, 21 Apr 2014 03:54:38 +0000 (22:54 -0500)]
Perl: add step3_env

10 years agoPerl: add step2_eval.
Joel Martin [Mon, 21 Apr 2014 02:50:52 +0000 (21:50 -0500)]
Perl: add step2_eval.