Joel Martin
b6dc3e37aa
awk-es6, Makefile: dist ruiles
2016-02-24 00:33:20 -06:00
Dov Murik
866042440b
cpp, haxe, rust: Fix (first nil) and (rest nil)
2016-02-03 21:23:48 -05:00
Dov Murik
29ba1fb6c0
Add gensym and clean or
macro to stepA of 19 implementations (part 3)
...
* awk
* cpp
* cs
* es6
* factor
* fsharp
* groovy
* haskell
* java
* julia
* kotlin
* matlab
* php
* r
* rpython
* rust
* scala
* swift
* vb
2016-01-25 16:30:54 -05:00
Stephen Thirlwall
494c160856
Don't pass an env to apply
...
Due to some initial confusion about which env to pass to the eval
builtin, I'd been needlessly passing an env to apply all along.
No need.
2015-12-15 11:22:25 +11:00
Stephen Thirlwall
19a6c2061e
Implement native swap! function
2015-12-14 17:40:55 +11: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
ecdbada174
Travis: add C++(cpp), factor and julia.
2015-10-06 18:28:46 -05:00
Joel Martin
5c99a323e9
C++: add Makefile stats targets.
2015-03-28 11:53:30 -05:00
Stephen Thirlwall
0997015d97
Split ASSERT into ASSERT and MAL_CHECK/MAL_FAIL
...
* ASSERT is to check for internal errors
* MAL_CHECK / MAL_FAIL is to check mal code errors
2015-03-28 22:54:26 +11:00
Stephen Thirlwall
208abaae43
Fix bugs introduced in reader hash-map/{} change
...
Only apparent in double-self-hosting mode.
eg. ../cpp/stepA_mal ./stepA_mal.mal ./stepA_mal.mal
Throws an error that MACROEXPAND is not defined.
TODO: figure out why modifying he hash in-place doesn't work.
2015-03-28 16:31:06 +11:00
Stephen Thirlwall
50263ccae3
Fix *host-language*
2015-03-28 15:41:19 +11:00
Stephen Thirlwall
86eae5ec38
Revert { X } -> ( hash-map X ) reader macro
...
The macro breaks the step 2 tests.
2015-03-28 15:20:04 +11:00
Stephen Thirlwall
f01c26838d
Replace table iterations with new for-loop syntax
...
Didn't even know this existed!
2015-03-28 12:41:54 +11:00
Stephen Thirlwall
778f6278b7
Use g++-4.9 instead of clang-3.5 on Linux
...
Using the linker fix from @kanaka
2015-03-28 12:17:25 +11:00
Stephen Thirlwall
fc9009e076
Fix Reader issues on Linux
...
* use regex_search rather than regex_iterator
* use multiple individual whitespace and token regexes,
rather than one giant regex
This appears to work on 14.10 and 15.04
2015-03-28 11:47:00 +11:00
Stephen Thirlwall
e78c38d020
Add README.md
2015-03-27 20:44:43 +11:00
Stephen Thirlwall
cb25284585
c++11: step A
2015-03-27 20:44:43 +11:00
Stephen Thirlwall
2f61492a1e
c++11: step 9
2015-03-27 20:44:43 +11:00
Stephen Thirlwall
3a8e11b85b
c++11: step 8
2015-03-27 20:44:43 +11:00
Stephen Thirlwall
5f8f337a42
c++11: step 7
2015-03-27 20:44:43 +11:00
Stephen Thirlwall
ad50bab2e5
c++11: step 6
2015-03-27 20:44:42 +11:00
Stephen Thirlwall
ff15fb140a
c++11: step 5
2015-03-27 20:44:42 +11:00
Stephen Thirlwall
ad0fc149de
c++11: step 4
2015-03-27 20:44:42 +11:00
Stephen Thirlwall
dc9b184b66
c++11: step 3
2015-03-27 20:44:42 +11:00
Stephen Thirlwall
179e8eafe4
c++11: step 2
...
Note that the optional tests for step 1 now fail because I no longer create a
hash directly in the reader, rather handle this as a reader macro:
{ LIST } -> ( hash-map LIST )
This way, once the constructor has built the hash-map, the hash is now evaluated,
and its evaluation procedure is a no-op.
I'd like to do the same with vectors, but this isn't so easy, as we use vectors
as parameter lists in fn* later on.
ie. we'd have this situation, which is incorrect (and I don't see an obvious workaround)
(fn* [params] body) -> (fn* (vector params) body)
2015-03-27 20:44:42 +11:00
Stephen Thirlwall
8bd091e3ad
c++11: step 1
2015-03-27 20:44:42 +11:00
Stephen Thirlwall
9ddaa0b91b
c++11: step 0
2015-03-27 20:44:42 +11:00