Joel Martin
bbd62dc97c
tests/stepA: allow time-ms result to be signed.
...
In Java the time-ms value was negative. This actually still works fine
because arithmetic comparison is still correct. So allow signed
time-ms results.
2018-07-12 14:24:14 -05:00
Joel Martin
e44c0be968
TypeScript: fix HOME bug and node symlink.
...
Update the Dockerfile to fix a symlink loop.
Update node_readline.ts to fix a failure with usage of
process.env.HOME which started failing for some reason.
2018-07-12 14:21:55 -05:00
Joel Martin
6e59c4f26d
scala: fix w/ xenial, sbt 0.14.6, update build.
...
Build had become out of date so update docker image to xenial and sbt
to 0.14.6 and update Scala build files to go with new sbt version.
2018-07-12 13:51:02 -05:00
Joel Martin
63462732fa
java: fix by updating to xenial, java 8, maven 3
...
The vivid build with java 7 and maven 2 was no longer able to retrieve
upstream deps and was failing.
2018-07-12 09:27:21 -05:00
Joel Martin
810ec74a67
Merge pull request #322 from chr15m/projects-using-mal
...
Added README section for projects using mal.
2018-06-26 08:43:15 -05:00
Chris McCormick
b0687d365b
Added README section for projects using mal.
2018-06-26 18:04:56 +08:00
Joel Martin
c9ce6b6d55
Merge pull request #320 from chr15m/php-interop-improvements
...
Updated PHP native interop interface.
2018-06-25 11:04:41 -05:00
Chris McCormick
ba218d6f0a
Updated PHP native interop interface.
2018-06-25 09:59:15 +08:00
Joel Martin
a2bcbe2bb5
Merge pull request #319 from chr15m/refactor-php-web-runner
...
PHP: refactor web running mechanism.
2018-06-24 11:27:48 -05:00
Chris McCormick
9106f92cbc
PHP: refactor web running mechanism.
2018-06-24 19:45:29 +08:00
Joel Martin
ce6814306d
Merge pull request #318 from jamesbvaughan/fix-readme-typo
...
Fix typo in Common Lisp section of Readme
2018-06-23 18:10:40 -05:00
James Vaughan
d7f720e653
Fix typo in Common Lisp section
2018-06-23 16:08:15 -07:00
Joel Martin
8c2a6e122d
Merge pull request #317 from kanaka/rename-short-abbreviations
...
Rename short abbreviations
2018-06-22 12:43:56 -05:00
Vasilij Schneidermann
808c940d86
Use correct implementation names in build matrix
2018-06-22 18:24:47 +02:00
Vasilij Schneidermann
b440380f64
Rename gst and pil directories in README
2018-06-22 18:20:38 +02:00
Vasilij Schneidermann
8ea36c892f
Rename gst and pil to gnu-smalltalk and picolisp
2018-06-17 19:54:54 +02:00
Joel Martin
9ee4a752c4
Merge pull request #316 from dubek/fantom
...
I pushed a container (we should probably figure out how to let you and @wasamasa do that at some point). The Fantom build is passing. Did a brief code review and looks good. Merged.
2018-06-03 19:56:52 -05:00
Dov Murik
80beb411e0
travis: Add fantom to build CI matrix
2018-06-03 20:14:27 +00:00
Dov Murik
92708e3488
Add Fantom implementation
2018-06-03 20:08:19 +00:00
Joel Martin
ba46e3b027
[clojure] update lumo/image to fix module mismatch.
2018-04-02 11:01:24 -05:00
Joel Martin
2c5410e8e9
Merge pull request #310 from bendudson/master
...
NASM x86-64 assembly implementation
2018-01-04 11:33:58 -06:00
Ben Dudson
9cb9566897
Tidying, minimising differences between steps
...
Merging fixes in stepA into earlier steps, and
removing differences in comments and spacing
2018-01-04 16:07:01 +00:00
Ben Dudson
16ca3eee57
Removing env and core from step2
...
Changed Env to Map. Need to define arithmetic
operators in step2 rather than core for this step.
2018-01-04 14:36:53 +00:00
Ben Dudson
2f61f4a8d3
Tidying up steps 0-3 (in progress)
...
Trying to remove common code, and minimise differences
between steps.
2018-01-03 23:50:34 +00:00
Ben Dudson
39b031b7b8
Adding nasm to Travis yml file
...
Enables testing of NASM implementation
2018-01-03 15:47:05 +00:00
Ben Dudson
20e02704c4
Add clean target
...
Deletes executables and object files
2018-01-03 15:43:22 +00:00
Ben Dudson
c4152b5fc2
Add stats and stats-lisp targets
...
Updated list of source files, added targets
with `;` as the comment character
2018-01-02 23:48:51 +00:00
Ben Dudson
918f2bee96
Bump language count in README
...
Updated to 72 languages
2018-01-02 23:39:01 +00:00
Ben Dudson
3e30ec9aa1
Dockerfile xenial and binutils install
...
* Changed from generic ubuntu to ubuntu:xenial
* Now requires binutils to be installed for `ld`
2018-01-02 23:37:42 +00:00
Joel Martin
b20f11f1d5
Merge pull request #311 from bendudson/nasm-tests-step7_9
...
New tests for steps 7 and 9
2018-01-02 09:53:18 -06:00
Joel Martin
c0f10162f3
Merge pull request #312 from jonaslu/add_metadata_reader_macro_in_docs
...
Update guide with note on reader macro with-meta
2018-01-02 09:51:23 -06:00
Joel Martin
3ea9bb9493
Swift: try forcing Travis to xcode version 7.3
2017-12-30 13:18:34 -06:00
Jonas Lundberg
bebce74bf5
Update guide with note on reader macro with-meta
...
Guide was missing the deferrable step of having
a reader macro for ^ (which is included in the
tests for step A) which caused some confusion
as to what it was.
It's included in the tests/step1_read_print.mal
but not mentioned in the docs.
2017-12-30 19:18:20 +01:00
Ben Dudson
f86d275f08
Fix bug in map: should pass args as list
...
This appeared only for variadic function which is used in EVAL.
Added a test to step 9 to catch this earlier.
2017-12-29 22:47:16 +00:00
Ben Dudson
40eb57d65c
Fix bug in concat, add test to step 7
...
Concatenating multiple empty lists resulted in a return
which should be empty but was not checked.
(concat (list) (list))
-> ()
Test added to step 7 to catch, since this appeared in
self-hosting step 8 in the -> macro expansion.
2017-12-29 22:47:10 +00:00
Ben Dudson
89f7cef6dc
Adding test to step7 for quasiquote
...
Handling of the last element of the AST
is tested by having an unquote as the last element.
2017-12-29 22:46:52 +00:00
Ben Dudson
265041fa76
Removing new tests from step7 and step9
...
These will be separated into another branch.
2017-12-29 22:44:22 +00:00
Ben Dudson
990c7b5ee6
Add docker file. Docker tests pass
...
Tested with:
```
docker build -t kanaka/mal-test-nasm" .
make DOCKERIZE=1 "test^nasm"
make DOCKERIZE=1 MAL_IMPL=nasm "test^mal"
```
Docker image not pushed to server, so Travis script fails.
2017-12-27 23:57:34 +00:00
Ben Dudson
860f35aae5
Moved macro-related functions to start of core Env
...
Changes the performance test 3 from ~ 3500/s to ~4300/s
Probably indicates that Env lookups are a big part of the
runtime.
2017-12-27 23:34:30 +00:00
Ben Dudson
331ddfed79
Adding README.md file and Make all target
...
* README.md in nasm/ directory lists some features and limitations
* Added NASM entry to root directory README.md
* Added an 'all' target to the nasm Makefile
2017-12-27 23:33:03 +00:00
Ben Dudson
0a96ee8abe
All tests pass
...
Some modifications needed to earlier steps
so they compile with the new core functions.
Need to disable double free error checks
in types, because step2 fails otherwise.
2017-12-27 17:32:01 +00:00
Ben Dudson
7f8ae811e1
Step 8 passes
2017-12-26 23:55:18 +00:00
Ben Dudson
90fb865514
Step 9 passes again
...
3 soft failures, due to hash-map comparisons
2017-12-26 23:51:58 +00:00
Ben Dudson
e64592a1da
Moving error handler into exceptions.asm
...
Needed by core routines, so will need to add
to earlier steps.
2017-12-26 23:41:15 +00:00
Ben Dudson
e8915efe8e
Fix bugs, performance test now runs
...
* Functions with an empty argument list resulted in a leak
of a single Cons object. This caused the performance test to fail.
* The heap 'next' pointers were dwords, rather than qwords.
This doesn't seem to have made a difference, but could if
the heap was made very large
* Double free errors now throw a string rather than printing
2017-12-26 23:31:16 +00:00
Ben Dudson
fb52de99c3
Fix bug in map, modifying function return values
...
map was modifying the container type to list, to avoid
having to copy values. Now checks if there are multiple
references, and if so makes a copy.
Fixes (= (gensym) (gensym)) error self-host test.
2017-12-22 22:58:06 +00:00
Ben Dudson
0b92f02034
Add seq core function. Self-hosting tests pass (!)
...
Only soft failures, mainly from:
* conj function not yet defined
* map comparison depends on the order in which keys appear
(since it's treated like a list)
* meta data only for functions
Some odd/concerning soft fails:
Expected : '(= (gensym) (gensym))\r\nfalse'
Got : '(= (gensym) (gensym))\r\nUncaught exception: non-integer argument to integer arithmetic'
Expected : '(let* [or_FIXME 23] (or false (+ or_FIXME 100)))\r\n123'
Got : '(let* [or_FIXME 23] (or false (+ or_FIXME 100)))\r\nUncaught exception: non-integer argument to integer arithmetic'
Expected : '(dissoc {:cde 345 :fgh 456} :cde)\r\n{:fgh 456}'
Got : '(dissoc {:cde 345 :fgh 456} :cde)\r\n[:fgh 456]'
2017-12-21 11:53:03 +00:00
Ben Dudson
e2ada64e74
Fix bug in map: should pass args as list
...
This appeared only for variadic function which is used in EVAL.
Added a test to step 9 to catch this earlier.
2017-12-21 10:56:14 +00:00
Ben Dudson
7f5572b0a6
Fix bug in apply, tests for double-free errors
...
* Apply didn't increment reference count when appending
a list to the end of the arguments list
* Added checks in release_cons and release_array,
to ensure that objects are not released more than once.
2017-12-20 23:02:02 +00:00
Ben Dudson
7eb930db46
Fix bugs in try*/catch*
...
Wasn't pushing Env, so wasn't releasing correctly.
Resulted in errors when in nested expressions.
Catch was also not popping the exception handler,
so repeated exceptions would not be handled correctly.
2017-12-18 23:25:59 +00:00