jackhill/mal.git
9 years agoguide.md: step9,A stubs. TODO. More vector tests.
Joel Martin [Fri, 30 Jan 2015 19:21:10 +0000 (13:21 -0600)]
guide.md: step9,A stubs. TODO. More vector tests.

9 years agoREADME: update count to 23 to reflect OCaml addition.
Joel Martin [Fri, 30 Jan 2015 18:10:08 +0000 (12:10 -0600)]
README: update count to 23 to reflect OCaml addition.

9 years agoMerge pull request #3 from Chouser/ocaml
Joel Martin [Fri, 30 Jan 2015 18:06:45 +0000 (12:06 -0600)]
Merge pull request #3 from Chouser/ocaml

Ocaml

9 years agoOCaml: add to README.md
Chouser [Fri, 30 Jan 2015 17:53:52 +0000 (12:53 -0500)]
OCaml: add to README.md

9 years agoOCaml: Fix stepA command-line script running
Chouser [Fri, 30 Jan 2015 17:38:44 +0000 (12:38 -0500)]
OCaml: Fix stepA command-line script running

9 years agoOCaml: Add time-ms
Chouser [Fri, 30 Jan 2015 17:38:32 +0000 (12:38 -0500)]
OCaml: Add time-ms

9 years agoOCaml: put macro flag in metadata rather than special type field
Chouser [Fri, 30 Jan 2015 14:10:24 +0000 (09:10 -0500)]
OCaml: put macro flag in metadata rather than special type field

9 years agoOCaml: self-hosting
Chouser [Fri, 30 Jan 2015 05:17:57 +0000 (00:17 -0500)]
OCaml: self-hosting

9 years agoOCaml: Add step 9
Chouser [Fri, 30 Jan 2015 04:29:54 +0000 (23:29 -0500)]
OCaml: Add step 9

9 years agoOCaml: Add Step 8
Chouser [Thu, 30 Jan 2014 01:05:05 +0000 (20:05 -0500)]
OCaml: Add Step 8

9 years agoOcaml: Add step 7
Chouser [Thu, 29 Jan 2015 04:43:21 +0000 (23:43 -0500)]
Ocaml: Add step 7

9 years agoOcaml: Finish adding step 6
Chouser [Wed, 28 Jan 2015 18:13:44 +0000 (13:13 -0500)]
Ocaml: Finish adding step 6

9 years agoOcaml: Add step 6
Chouser [Wed, 28 Jan 2015 14:07:21 +0000 (09:07 -0500)]
Ocaml: Add step 6

9 years agoOcaml: fix list and comment parsing
Chouser [Wed, 28 Jan 2015 14:06:53 +0000 (09:06 -0500)]
Ocaml: fix list and comment parsing

9 years agoOcaml: fix string escaping and printing
Chouser [Wed, 28 Jan 2015 13:27:32 +0000 (08:27 -0500)]
Ocaml: fix string escaping and printing

9 years agoOcaml: Use builtin String.concat instead of own join fun
Chouser [Wed, 28 Jan 2015 13:24:52 +0000 (08:24 -0500)]
Ocaml: Use builtin String.concat instead of own join fun

9 years agoOcaml: Add step 5, TCO worked automatically in Ocaml
Chouser [Tue, 27 Jan 2015 16:30:05 +0000 (11:30 -0500)]
Ocaml: Add step 5, TCO worked automatically in Ocaml

9 years agoOcaml: All optional tests passing up thru step 4
Chouser [Tue, 27 Jan 2015 04:05:13 +0000 (23:05 -0500)]
Ocaml: All optional tests passing up thru step 4

9 years agoOcaml: add meta, with-meta, and ^ reader support
Chouser [Tue, 27 Jan 2015 00:16:23 +0000 (19:16 -0500)]
Ocaml: add meta, with-meta, and ^ reader support

9 years agoOcaml: Use a real map type
Chouser [Mon, 26 Jan 2015 04:30:37 +0000 (23:30 -0500)]
Ocaml: Use a real map type

T.Map is now a real OCaml binary-tree map, and supports arbitrary mal value
types for both keys and values.  Metadata support is provided in the data
objects, but not yet in the printer, reader, or core library.

9 years agoOcaml: Add read, print for vector, map
Chouser [Sat, 24 Jan 2015 05:44:51 +0000 (00:44 -0500)]
Ocaml: Add read, print for vector, map

9 years agoOcaml: rename Types.MalList to Types.List
Chouser [Sat, 24 Jan 2015 03:54:15 +0000 (22:54 -0500)]
Ocaml: rename Types.MalList to Types.List

9 years agoOcaml: Add string functions
Chouser [Sat, 24 Jan 2015 01:05:03 +0000 (20:05 -0500)]
Ocaml: Add string functions

9 years agoOcaml: Add step 4, but not str fns or optionals.
Chouser [Fri, 23 Jan 2015 23:11:45 +0000 (18:11 -0500)]
Ocaml: Add step 4, but not str fns or optionals.

9 years agoOcaml: Finally fix race conditions in compilation
Chouser [Fri, 23 Jan 2015 21:55:06 +0000 (16:55 -0500)]
Ocaml: Finally fix race conditions in compilation

Also, use native compilation for everything except Ocaml REPL.

9 years agoOcaml: Add step 3
Chouser [Fri, 23 Jan 2015 13:17:35 +0000 (08:17 -0500)]
Ocaml: Add step 3

9 years agoOcaml: made minor fixes, mostly to Makefile
Chouser [Thu, 22 Jan 2015 20:55:22 +0000 (15:55 -0500)]
Ocaml: made minor fixes, mostly to Makefile

9 years agoOcaml: Add step 2, nothing optional
Chouser [Thu, 22 Jan 2015 07:59:48 +0000 (02:59 -0500)]
Ocaml: Add step 2, nothing optional

9 years agoOcaml: Added step 1, missing some optional functionality
Chouser [Thu, 22 Jan 2015 07:59:48 +0000 (02:59 -0500)]
Ocaml: Added step 1, missing some optional functionality

9 years agoOCaml: add step 0
Chouser [Thu, 22 Jan 2015 01:53:51 +0000 (20:53 -0500)]
OCaml: add step 0

9 years agoguide.md: add link to langpop.corger.nl
Joel Martin [Fri, 30 Jan 2015 05:49:41 +0000 (23:49 -0600)]
guide.md: add link to langpop.corger.nl

Also, fix grammar.

9 years agoDraft guide and architecture diagrams.
Joel Martin [Fri, 30 Jan 2015 03:59:09 +0000 (21:59 -0600)]
Draft guide and architecture diagrams.

9 years agoTemplate cleanup.
Joel Martin [Sat, 17 Jan 2015 07:34:21 +0000 (01:34 -0600)]
Template cleanup.

9 years agoLua: all steps and self-hosting.
Joel Martin [Fri, 9 Jan 2015 05:25:40 +0000 (23:25 -0600)]
Lua: all steps and self-hosting.

Also some misc docs/TODO updates.

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.