Joel Martin
206e6197e8
Basic: add pr-memory-summary core function.
...
- Remove test POKE commands.
2016-11-04 22:53:20 -05:00
Joel Martin
1e7b6f841f
Ada: add ada/obj to .gitignore
2016-11-04 22:52:58 -05:00
Joel Martin
332611f520
README: note ChucK tested on more than just Arch.
2016-11-04 22:52:05 -05:00
Joel Martin
935930128c
Basic: move logic/release stack to $C000
...
Uses stack PUSH*/POP*/PEEK* routines instead of direct X% and Y%
access. Seems to be about the same performance (maybe a 5% performance
hit at most).
This gives us a larger stack (1920 2-byte words of $C000 rather
than 200 words as before). The release stack at $CF00 stays the same
size (64 4-byte addr/level entries).
Also saves over 1K or program and array space. So take the opportunity
to expand Z% entry space from 3712 to 3950.
2016-11-04 21:46:45 -05:00
Joel Martin
c756af8196
Basic: reduce variables. Fix func printing.
...
- Save over 450 bytes. Bump up Z values by 128.
- Fix function printing when function is embedded in something else by
using strings storage as a stack while printing rather than using
RR$
- Simplify some error messages and sanity checks in RELEASE.
2016-11-04 00:07:09 -05:00
Joel Martin
6420f327cd
Basic: add string memory mgt. Fix eval, symbol fns
2016-11-03 23:27:42 -05:00
Joel Martin
4fab6aa517
Basic: more memory savings
...
- Do the pop of CALL return value at the end of the subroutine
(callee) rather than at the call point (caller)
- shorten some character variables (CH$->C$, CH->C)
- remove spaces after OPEN, GET
- print REPL header directly in BASIC code
Together saves 404 bytes of memory.
2016-11-02 23:36:44 -05:00
Joel Martin
259dd13c56
Basic: more aggressive space removal
...
Saves over 1200 bytes so that Z% value space can be bumped up by 256
entries.
2016-11-02 22:19:51 -05:00
Joel Martin
fba3aeb2fb
Ada, C: fix step3 error handling.
...
New step3 tests were added during basic implementation that broke Ada
and C.
2016-11-01 10:44:49 -05:00
Joel Martin
2bcc46af48
Basic: capitalize BASIC
...
I guess.
2016-10-31 17:50:13 -05:00
Joel Martin
2bec1db017
Basic: update to 61 impls after merge.
2016-10-31 17:45:00 -05:00
Joel Martin
b3658328e4
Merge branch 'master' of github.com:kanaka/mal
2016-10-31 17:41:58 -05:00
Joel Martin
1b03073347
Merge branch 'basic'
2016-10-31 17:40:29 -05:00
Joel Martin
1b2453005e
Basic: update the README.
2016-10-31 17:38:28 -05:00
Joel Martin
fd39f14b25
Merge pull request #247 from chr15m/php-interop-extended
...
Php interop extended
2016-10-31 10:20:04 -05:00
Joel Martin
0197588627
Basic: add QBasic support.
...
make MODE=qbasic stepA_mal.bas
qb64 stepA_mal.bas
2016-10-30 19:15:24 -05:00
Chris McCormick
29ebdb9c48
Added interop notes to README.
2016-10-29 12:32:26 +08:00
Chris McCormick
e7e13ef760
Merge branch 'master' into php-interop-extended
2016-10-29 12:29:33 +08:00
Chris McCormick
07eb8b944a
Tests for new PHP interop functions.
2016-10-29 12:25:04 +08:00
Chris McCormick
42f9de6a8a
Tighter PHP interop using '$' and '!' fns.
...
($ _SERVER) returns a mal hash-map holding the contents of the $_SERVER superglobal from PHP.
(! file_get_contents "https://github.com ") returns a string containing the github homepage.
file_get_contents is a native PHP function.
2016-10-29 12:24:52 +08:00
Chris McCormick
f39b8db702
Allow printing of more PHP types.
...
In case return type from interop is a complex native PHP type.
2016-10-29 11:30:23 +08:00
Chris McCormick
5f0857261f
New functions for converting between PHP and mal types.
2016-10-29 11:30:19 +08:00
Joel Martin
4b9b1d2506
Basic: enable Travis testing.
2016-10-28 22:05:30 -05:00
Joel Martin
37d75dc6dd
Basic: pass required tests. Printer fix.
...
Also, move dissoc and hashmap equality tests to optional/soft since
they aren't actually needed for self-hosting.
2016-10-28 22:02:59 -05:00
Joel Martin
7381834f55
Basic: add Dockerfile
...
- installs patch cbmbasic
2016-10-28 21:57:35 -05:00
Joel Martin
5afc402eb8
Basic: d64 disk image build rules.
...
- Include .args.mal file and core.mal into the image.
2016-10-28 21:49:29 -05:00
Joel Martin
f813889535
Merge pull request #246 from def-/master
...
Update Nim to 0.15.2, clean up compiler warnings
2016-10-28 10:21:09 -05:00
Dennis Felsing
4dab2092b0
Update Nim to 0.15.2, clean up compiler warnings
2016-10-28 12:02:21 +02:00
Joel Martin
504df77e22
Merge pull request #245 from dubek/vimscript-use-vim8
...
Vimscript: Use Vim 8.0
2016-10-28 00:40:27 -05:00
Joel Martin
4e7d8a1bcf
Basic: fix step6 arg test. Gensym. Misc cleanup.
...
- Strip linefeeds in run_argv_test.sh so that step6 arg test passes
for basic.
- Add gensym and convert or macro.
- Add gitignore entries for transpiled basic sources.
- Add conj/seq stubs so that step4 self-host loads (if non-step4
functions are commented out in core.mal)
- Bump up Z% value space by 256 spaces (1K)
- Remove old qb2cbm.sh
2016-10-28 00:09:56 -05:00
Joel Martin
d3439c903d
Merge pull request #244 from chr15m/php-web-run
...
Allow web exec of a .mal file via symlinked php script.
2016-10-27 10:14:02 -05:00
Joel Martin
c7330b3d69
Basic: fix errors, reader, if form. Self-host 0-3
...
- Stop let binding eval on error. Also don't continue into EVAL if
error.
- if without a false position was freeing up too much when it
finished.
- fix reader so that it doesn't keep incrementing ref cnt of static
empty sequences.
2016-10-26 22:29:09 -05:00
Joel Martin
de2f4de9b8
Basic: use static empty sequences in reader.
...
- Add vector and hash-map empty static sequences in types
2016-10-26 20:43:17 -05:00
Dov Murik
4fbbe5719c
vimscript: Use map and lambda in EvalAst
2016-10-26 08:22:11 +00:00
Dov Murik
b628a22074
vimscript: Remove useless calls to ObjQ
2016-10-26 08:22:11 +00:00
Dov Murik
b0b1e16947
vimscript: Remove calls to ObjType
2016-10-26 08:22:11 +00:00
Dov Murik
82641edb65
vimscript: Remove calls to ObjValue
2016-10-26 08:22:05 +00:00
Joel Martin
af621e3aec
Basic: implement CALL in basicpp.py and use it.
...
- Add clean rule to Makefile and restructure deps.
2016-10-26 01:26:05 -05:00
Chris McCormick
80c5fbb13c
Documentation for the web-run functionality.
2016-10-26 08:56:57 +08:00
Dov Murik
43d175390a
vimscript: Simplify *ARGV* setting using map and lambda
2016-10-25 22:43:28 +00:00
Dov Murik
549763e9f6
vimscript: Update Dockerfile to install Vim 8.0
2016-10-25 22:33:07 +00:00
Dov Murik
aa62cbda71
vimscript: Use Vim 8.0 lambdas to reduce boilerplate code
2016-10-25 22:33:02 +00:00
Dov Murik
816f0e2fc7
vimscript: Increase the unixtime base to make sure time-ms fits in a *positive* integer
2016-10-25 22:32:16 +00:00
Dov Murik
ab1c5d944c
vimscript: Fix misinformation in comment
2016-10-25 22:32:16 +00:00
Joel Martin
8e3f833add
Merge pull request #239 from wasamasa/picolisp
...
Picolisp
2016-10-25 17:20:07 -05:00
Vasilij Schneidermann
3e127081a4
Add interop and tests
2016-10-26 00:11:33 +02:00
Vasilij Schneidermann
b6263859a9
Extend README
2016-10-25 23:43:32 +02:00
Vasilij Schneidermann
b68230b821
Add docker support
2016-10-25 22:39:32 +02:00
Joel Martin
a2ca9d9450
Merge pull request #243 from wasamasa/assoc-update-tests
...
Ensure assoc updates maps properly
2016-10-25 11:15:03 -05:00
Joel Martin
e00c42c2d3
Merge pull request #242 from wasamasa/elisp-emacs25
...
Emacs 25.1 fixes
2016-10-25 11:07:07 -05:00