jackhill/mal.git
8 years agoSupport multiple let* binding clauses
ekmartin [Sat, 5 Sep 2015 20:25:22 +0000 (22:25 +0200)]
Support multiple let* binding clauses

8 years agoImplement basic let* functionality (one pair)
ekmartin [Sat, 5 Sep 2015 15:19:19 +0000 (17:19 +0200)]
Implement basic let* functionality (one pair)

8 years agoAdd support for def!
ekmartin [Sat, 5 Sep 2015 15:08:11 +0000 (17:08 +0200)]
Add support for def!

8 years agoStep 2 using agent as env
ekmartin [Fri, 4 Sep 2015 23:51:58 +0000 (01:51 +0200)]
Step 2 using agent as env

8 years agoFinish step 2, no optional functionality
ekmartin [Fri, 4 Sep 2015 22:37:02 +0000 (00:37 +0200)]
Finish step 2, no optional functionality

8 years agoUse throw/catch for cleaner code
ekmartin [Fri, 4 Sep 2015 22:36:47 +0000 (00:36 +0200)]
Use throw/catch for cleaner code

8 years agoAdd support for deref and meta
ekmartin [Fri, 4 Sep 2015 21:14:37 +0000 (23:14 +0200)]
Add support for deref and meta

8 years agoAdd print_readably
ekmartin [Fri, 4 Sep 2015 21:11:45 +0000 (23:11 +0200)]
Add print_readably

8 years agoAdd reader support for all quote types
ekmartin [Thu, 3 Sep 2015 00:20:34 +0000 (02:20 +0200)]
Add reader support for all quote types

8 years agoAdd read/print functionality up to quote (step 1)
ekmartin [Thu, 3 Sep 2015 00:07:29 +0000 (02:07 +0200)]
Add read/print functionality up to quote (step 1)

8 years agoAdd elixir step0
ekmartin [Fri, 28 Aug 2015 22:15:46 +0000 (00:15 +0200)]
Add elixir step0

8 years agoMerge pull request #80 from kariya-mitsuru/add-gawk
Joel Martin [Wed, 26 Aug 2015 15:46:58 +0000 (10:46 -0500)]
Merge pull request #80 from kariya-mitsuru/add-gawk

Adds GNU awk implementaion

8 years agorename directory
Mitsuru Kariya [Wed, 26 Aug 2015 01:13:25 +0000 (10:13 +0900)]
rename directory

8 years agoAdds GNU awk implementaion
Mitsuru Kariya [Tue, 25 Aug 2015 15:46:31 +0000 (00:46 +0900)]
Adds GNU awk implementaion

8 years agoCoffee: update ffi dep to 1.3.x
Joel Martin [Sat, 22 Aug 2015 18:41:46 +0000 (13:41 -0500)]
Coffee: update ffi dep to 1.3.x

8 years agomal: add back conj definition.
Joel Martin [Fri, 7 Aug 2015 12:34:09 +0000 (07:34 -0500)]
mal: add back conj definition.

8 years agoREADME.md: correct alpha ordering.
Joel Martin [Thu, 6 Aug 2015 20:52:42 +0000 (15:52 -0500)]
README.md: correct alpha ordering.

8 years agoREADME.md count to 38. JS and ES6 build fixes.
Joel Martin [Thu, 6 Aug 2015 20:46:12 +0000 (15:46 -0500)]
README.md count to 38. JS and ES6 build fixes.

8 years agoES6: Symbols, remove semis, other simplifications.
Joel Martin [Wed, 5 Aug 2015 03:20:58 +0000 (22:20 -0500)]
ES6: Symbols, remove semis, other simplifications.

8 years agoES6: all optionals and self-hosting.
Joel Martin [Sun, 2 Aug 2015 03:29:44 +0000 (22:29 -0500)]
ES6: all optionals and self-hosting.

8 years agoES6: add stepA basics.
Joel Martin [Sat, 1 Aug 2015 04:08:33 +0000 (23:08 -0500)]
ES6: add stepA basics.

8 years agoES6: add step8 and step9 basics.
Joel Martin [Sat, 1 Aug 2015 01:53:59 +0000 (20:53 -0500)]
ES6: add step8 and step9 basics.

8 years agoES6: add step6 and step7 basics.
Joel Martin [Fri, 31 Jul 2015 05:29:44 +0000 (00:29 -0500)]
ES6: add step6 and step7 basics.

8 years agoES6: step4 basics and step5.
Joel Martin [Fri, 31 Jul 2015 04:57:45 +0000 (23:57 -0500)]
ES6: step4 basics and step5.

8 years agoES6: add step2 and step3 basics.
Joel Martin [Fri, 31 Jul 2015 03:31:03 +0000 (22:31 -0500)]
ES6: add step2 and step3 basics.

8 years agoES6: step0 and step1 basics.
Joel Martin [Fri, 31 Jul 2015 02:15:55 +0000 (21:15 -0500)]
ES6: step0 and step1 basics.

8 years agoC: fix history function with libedit-2
Joel Martin [Thu, 23 Jul 2015 19:01:34 +0000 (14:01 -0500)]
C: fix history function with libedit-2

8 years agoMerge pull request #77 from kariya-mitsuru/fix-c#-arguments-handling
Joel Martin [Wed, 22 Jul 2015 17:04:39 +0000 (12:04 -0500)]
Merge pull request #77 from kariya-mitsuru/fix-c#-arguments-handling

C#: fix arguments handling

8 years agoMerge pull request #76 from kariya-mitsuru/perl-improve-metasupport
Joel Martin [Wed, 22 Jul 2015 16:58:35 +0000 (11:58 -0500)]
Merge pull request #76 from kariya-mitsuru/perl-improve-metasupport

perl: add meta support for builtin function

8 years agoMerge pull request #79 from kariya-mitsuru/lua-improve-metasupport
Joel Martin [Wed, 22 Jul 2015 16:56:55 +0000 (11:56 -0500)]
Merge pull request #79 from kariya-mitsuru/lua-improve-metasupport

lua: add meta support for builtin function

8 years agoMerge pull request #78 from kariya-mitsuru/lua-add-conj
Joel Martin [Wed, 22 Jul 2015 16:55:40 +0000 (11:55 -0500)]
Merge pull request #78 from kariya-mitsuru/lua-add-conj

lua: add conj

8 years agolua: add meta support for builtin function
Mitsuru Kariya [Wed, 22 Jul 2015 08:59:11 +0000 (17:59 +0900)]
lua: add meta support for builtin function

8 years agolua: add conj
Mitsuru Kariya [Wed, 22 Jul 2015 08:56:32 +0000 (17:56 +0900)]
lua: add conj

8 years agoC#: fix arguments handling
Mitsuru Kariya [Tue, 21 Jul 2015 18:01:46 +0000 (03:01 +0900)]
C#: fix arguments handling

The arguments handling was incorrect like below.

- step6 to step8
    *ARGV* was right but the filename of load-file was wrong.
- stepA
    The filename of load-file was right but *ARGV* includes the
    filename.

8 years agoMerge pull request #75 from kariya-mitsuru/fix-c-editline-history
Joel Martin [Tue, 21 Jul 2015 14:14:59 +0000 (09:14 -0500)]
Merge pull request #75 from kariya-mitsuru/fix-c-editline-history

fix history function of C

8 years agoperl: add meta support for builtin function
Mitsuru Kariya [Tue, 21 Jul 2015 08:35:17 +0000 (17:35 +0900)]
perl: add meta support for builtin function

8 years agofix history function of C
Mitsuru Kariya [Tue, 21 Jul 2015 06:58:17 +0000 (15:58 +0900)]
fix history function of C

When the editline was used instead of the readline, the history function of C didn't work as intended.

It was caused like below.

- segmentation fault if a history is empty.
- incorrect line was added to a history file.

8 years agoMerge pull request #74 from kariya-mitsuru/perl-conj
Joel Martin [Thu, 16 Jul 2015 19:19:50 +0000 (14:19 -0500)]
Merge pull request #74 from kariya-mitsuru/perl-conj

perl: add conj

8 years agoperl: add conj
Mitsuru Kariya [Thu, 16 Jul 2015 14:16:40 +0000 (23:16 +0900)]
perl: add conj

8 years agoMerge pull request #73 from pstephens/fsharp
Joel Martin [Tue, 14 Jul 2015 19:44:43 +0000 (14:44 -0500)]
Merge pull request #73 from pstephens/fsharp

Mal implemented in F#.

8 years agofsharp: Tweaked README.md blurb for F#.
Peter Stephens [Mon, 6 Jul 2015 02:47:59 +0000 (21:47 -0500)]
fsharp: Tweaked README.md blurb for F#.

8 years agofsharp: Added F# to the README.md
Peter Stephens [Mon, 6 Jul 2015 02:45:13 +0000 (21:45 -0500)]
fsharp: Added F# to the README.md

8 years agoMerge remote-tracking branch 'kanaka/master' into fsharp
Peter Stephens [Mon, 6 Jul 2015 02:28:20 +0000 (21:28 -0500)]
Merge remote-tracking branch 'kanaka/master' into fsharp

Conflicts:
.gitignore
Makefile

8 years agofsharp: stepA: All self host tests now pass.
Peter Stephens [Mon, 6 Jul 2015 02:13:38 +0000 (21:13 -0500)]
fsharp: stepA: All self host tests now pass.

8 years agofsharp: stepA: Self host through step9. Added meta and with-meta.
Peter Stephens [Sun, 5 Jul 2015 21:23:34 +0000 (16:23 -0500)]
fsharp: stepA: Self host through step9. Added meta and with-meta.

8 years agofsharp: stepA: Self host through step3. Need conj to pass step4.
Peter Stephens [Sat, 4 Jul 2015 06:02:43 +0000 (01:02 -0500)]
fsharp: stepA: Self host through step3. Need conj to pass step4.

8 years agofsharp: stepA: Self host through step2. Need atoms to pass step3.
Peter Stephens [Sat, 4 Jul 2015 01:02:58 +0000 (20:02 -0500)]
fsharp: stepA: Self host through step2. Need atoms to pass step3.

8 years agofsharp: step8: Implemented cond macro.
Peter Stephens [Fri, 3 Jul 2015 23:20:36 +0000 (18:20 -0500)]
fsharp: step8: Implemented cond macro.

8 years agofsharp: step9: Implemented more core funcs.
Peter Stephens [Fri, 3 Jul 2015 22:35:00 +0000 (17:35 -0500)]
fsharp: step9: Implemented more core funcs.

9 years agofsharp: step9: Implemented try*/catch*/throw. Implemented apply and map. Implemented...
Peter Stephens [Fri, 3 Jul 2015 17:07:57 +0000 (12:07 -0500)]
fsharp: step9: Implemented try*/catch*/throw. Implemented apply and map. Implemented some predicates.

9 years agofsharp: step8: Implemented macros. Deferred cond because it requires exceptions
Peter Stephens [Fri, 3 Jul 2015 14:57:15 +0000 (09:57 -0500)]
fsharp: step8: Implemented macros. Deferred cond because it requires exceptions

9 years agofsharp: eval 'sharded across the time dimension' for step7.
Peter Stephens [Fri, 3 Jul 2015 02:11:05 +0000 (21:11 -0500)]
fsharp: eval 'sharded across the time dimension' for step7.

9 years agofsharp: eval 'shared across the time dimension' for step6.
Peter Stephens [Fri, 3 Jul 2015 00:04:33 +0000 (19:04 -0500)]
fsharp: eval 'shared across the time dimension' for step6.

9 years agofsharp: eval 'sharded across the time dimension' for step5.
Peter Stephens [Thu, 2 Jul 2015 22:55:42 +0000 (17:55 -0500)]
fsharp: eval 'sharded across the time dimension' for step5.

9 years agofsharp: eval 'sharded across the time dimension' for step4. Step0, 1, & 3 style changes.
Peter Stephens [Thu, 2 Jul 2015 18:39:54 +0000 (13:39 -0500)]
fsharp: eval 'sharded across the time dimension' for step4. Step0, 1, & 3 style changes.

9 years agofsharp: eval 'sharded across the time dimension' for step2 & step3.
Peter Stephens [Tue, 30 Jun 2015 03:57:47 +0000 (22:57 -0500)]
fsharp: eval 'sharded across the time dimension' for step2 & step3.

9 years agoMakefile: add generic top-level impl build rule.
Joel Martin [Tue, 16 Jun 2015 15:23:12 +0000 (10:23 -0500)]
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.

9 years agoREADME: add RPython and bump count to 36.
Joel Martin [Thu, 11 Jun 2015 15:01:16 +0000 (10:01 -0500)]
README: add RPython and bump count to 36.

9 years agoRPython: replace asserts with conditionals.
Joel Martin [Thu, 11 Jun 2015 05:15:07 +0000 (00:15 -0500)]
RPython: replace asserts with conditionals.

9 years agoRPython: misc cleanup, step sync, stats target.
Joel Martin [Thu, 11 Jun 2015 04:54:18 +0000 (23:54 -0500)]
RPython: misc cleanup, step sync, stats target.

9 years agoRPython: self-hosting
Joel Martin [Thu, 11 Jun 2015 04:25:55 +0000 (23:25 -0500)]
RPython: self-hosting

9 years agoRPython: add vector and hash-map support.
Joel Martin [Thu, 11 Jun 2015 02:59:01 +0000 (21:59 -0500)]
RPython: add vector and hash-map support.

9 years agoRPython: stepA basics. Makefile refactor.
Joel Martin [Wed, 10 Jun 2015 04:22:48 +0000 (23:22 -0500)]
RPython: stepA basics. Makefile refactor.

9 years agoRPython: step9 basics.
Joel Martin [Wed, 10 Jun 2015 04:07:03 +0000 (23:07 -0500)]
RPython: step9 basics.

9 years agoRPython: step8 basics.
Joel Martin [Wed, 10 Jun 2015 02:21:12 +0000 (21:21 -0500)]
RPython: step8 basics.

9 years agoRPython: step7
Joel Martin [Tue, 9 Jun 2015 04:38:56 +0000 (23:38 -0500)]
RPython: step7

9 years agoRPython: step6 basics.
Joel Martin [Tue, 9 Jun 2015 04:09:17 +0000 (23:09 -0500)]
RPython: step6 basics.

9 years agoRPython: step5
Joel Martin [Tue, 9 Jun 2015 03:14:37 +0000 (22:14 -0500)]
RPython: step5

9 years agoRPython: step4 basics.
Joel Martin [Tue, 9 Jun 2015 02:58:37 +0000 (21:58 -0500)]
RPython: step4 basics.

9 years agoRPython: step3 basics.
Joel Martin [Thu, 4 Jun 2015 04:16:37 +0000 (23:16 -0500)]
RPython: step3 basics.

9 years agoRPython: step2 basics.
Joel Martin [Thu, 4 Jun 2015 04:01:16 +0000 (23:01 -0500)]
RPython: step2 basics.

9 years agoRPython: add keywords. Use unicode internally.
Joel Martin [Thu, 4 Jun 2015 03:22:48 +0000 (22:22 -0500)]
RPython: add keywords. Use unicode internally.

9 years agoRPython: step1 basics
Joel Martin [Wed, 3 Jun 2015 04:58:23 +0000 (23:58 -0500)]
RPython: step1 basics

9 years agoRPython: step0
Joel Martin [Tue, 2 Jun 2015 03:26:28 +0000 (22:26 -0500)]
RPython: step0

9 years agoREADME: consistent alpha ordering of impls.
Joel Martin [Sat, 6 Jun 2015 14:51:43 +0000 (09:51 -0500)]
README: consistent alpha ordering of impls.

9 years agoFix formatting.
Joel Martin [Sat, 6 Jun 2015 14:44:41 +0000 (09:44 -0500)]
Fix formatting.

9 years agoMerge pull request #71 from rhysd/docfix
Joel Martin [Thu, 4 Jun 2015 13:13:58 +0000 (08:13 -0500)]
Merge pull request #71 from rhysd/docfix

guide: fix missing escape and typo

9 years agoguide: fix missing escape and typo
rhysd [Thu, 4 Jun 2015 05:02:26 +0000 (14:02 +0900)]
guide: fix missing escape and typo

9 years agoCrystal: fix full stats.
Joel Martin [Wed, 3 Jun 2015 17:59:50 +0000 (12:59 -0500)]
Crystal: fix full stats.

9 years agoCrystal: update impl count to 35. Expand desc/credit.
Joel Martin [Wed, 3 Jun 2015 17:53:20 +0000 (12:53 -0500)]
Crystal: update impl count to 35. Expand desc/credit.

9 years agoMerge pull request #70 from rhysd/crystal
Joel Martin [Wed, 3 Jun 2015 17:33:05 +0000 (12:33 -0500)]
Merge pull request #70 from rhysd/crystal

Mal implementation by Crystal

9 years agocrystal: fix for Crystal 0.7.2
rhysd [Wed, 3 Jun 2015 16:59:10 +0000 (01:59 +0900)]
crystal: fix for Crystal 0.7.2

9 years agocrystal: fix early steps broken because of later refactoring
rhysd [Tue, 2 Jun 2015 17:23:01 +0000 (02:23 +0900)]
crystal: fix early steps broken because of later refactoring

9 years agocrystal: `make MAL_IMPL=crystal test^mal` succeeds finally
rhysd [Mon, 1 Jun 2015 17:00:34 +0000 (02:00 +0900)]
crystal: `make MAL_IMPL=crystal test^mal` succeeds finally

9 years agocrystal: fix Makefile to build all steps
rhysd [Fri, 29 May 2015 17:07:59 +0000 (02:07 +0900)]
crystal: fix Makefile to build all steps

9 years agocrystal: all tests for stepA pass
rhysd [Thu, 28 May 2015 18:16:22 +0000 (03:16 +0900)]
crystal: all tests for stepA pass

9 years agocrystal: refactor by adding Array to Mal type conversion
rhysd [Thu, 28 May 2015 15:32:16 +0000 (00:32 +0900)]
crystal: refactor by adding Array to Mal type conversion

9 years agocrystal: implement step9
rhysd [Tue, 26 May 2015 17:04:29 +0000 (02:04 +0900)]
crystal: implement step9

9 years agocrystal: improve error message
rhysd [Sun, 24 May 2015 18:56:23 +0000 (03:56 +0900)]
crystal: improve error message

9 years agocrystal: implement step8
rhysd [Sun, 24 May 2015 18:49:53 +0000 (03:49 +0900)]
crystal: implement step8

9 years agocrystal: implement step7
rhysd [Sat, 23 May 2015 19:00:21 +0000 (04:00 +0900)]
crystal: implement step7

9 years agocrystal: fix hashmap
rhysd [Sat, 23 May 2015 08:12:55 +0000 (17:12 +0900)]
crystal: fix hashmap

9 years agocrystal: implement step6
rhysd [Sat, 23 May 2015 08:01:12 +0000 (17:01 +0900)]
crystal: implement step6

9 years agocrystal: implemented step5
rhysd [Thu, 21 May 2015 17:51:38 +0000 (02:51 +0900)]
crystal: implemented step5

the test (def! res1 (sum-to 10000)) failed in my environment because it
could compute the result even if TCO is not available.  If stack
overflow happens, the interpreter will go into SEGV.

9 years agocrystal: complete step4
rhysd [Wed, 13 May 2015 14:03:03 +0000 (23:03 +0900)]
crystal: complete step4

9 years agocrystal: add "&" param and 'not' function
rhysd [Tue, 12 May 2015 18:16:36 +0000 (03:16 +0900)]
crystal: add "&" param and 'not' function

9 years agocrystal: add relational operators
rhysd [Tue, 12 May 2015 16:42:39 +0000 (01:42 +0900)]
crystal: add relational operators

9 years agocrystal: refactor member names and errors
rhysd [Tue, 12 May 2015 02:33:03 +0000 (11:33 +0900)]
crystal: refactor member names and errors

9 years agocrystal: define Mal::Type class instead of simple alias of union
rhysd [Mon, 11 May 2015 16:47:58 +0000 (01:47 +0900)]
crystal: define Mal::Type class instead of simple alias of union

9 years agocrystal: make core.cr and implement +, -, *, /, list, list?, empty?, count and =
rhysd [Sun, 10 May 2015 19:14:17 +0000 (04:14 +0900)]
crystal: make core.cr and implement +, -, *, /, list, list?, empty?, count and =