1
0
mirror of https://github.com/janet-lang/janet synced 2024-12-25 07:50:27 +00:00
Commit Graph

108 Commits

Author SHA1 Message Date
bakpakin
01a95426b3 More work on compiler. Add compiler unit test that currently
segfaults alot. Added dst_disasm to reconstruct dsts assembly
from a funcdef.
2017-12-16 23:11:51 -05:00
bakpakin
2d781ef21b Compiler is coming along. Work on Slot system and general compiler strategy. 2017-12-16 01:17:53 -05:00
bakpakin
1293d2e301 Initial rewrite of compiler 2017-12-14 19:33:45 -05:00
bakpakin
a2ee6ffe5c New custom strtod implementation. 2017-12-08 15:57:02 -05:00
bakpakin
592e9495e4 Merge branch 'alpha' of https://github.com/bakpakin/gst into alpha 2017-12-03 12:52:36 -05:00
bakpakin
14fe30b411 Add preliminary source mapping to parser (always on) 2017-12-03 12:52:09 -05:00
Calvin Rose
114dda8294 Catch unitialized value valgrind error. Probably has no effect,
but fixed to shut up valgrind.
2017-11-29 15:33:27 -05:00
Calvin Rose
eceb6e5a77 More work on nanbox implementation. 2017-11-29 15:17:56 -05:00
Calvin Rose
b568a6bc88 WIP integrating nanbox support back into code. 2017-11-28 18:27:55 -05:00
Calvin Rose
d84cc5342e Fix write after free bug.
Remove caching from strings, tuples, and structs.
Keyword style strings removed, now are just symbols. The
compiler can decide to treat symbols with a leading ':'
differently for mostly the same effect. This was done because
as strings are no longer interned, symbols are cheaper to look
up and check for equality.
2017-11-27 14:03:34 -05:00
bakpakin
68f5ea4361 Add test nanbox implementation. Works for 32 bit and 64 bit x86 2017-11-26 19:31:40 -05:00
bakpakin
412d40d09f Work on interpreter. adding more opcodes and syscalls. 2017-11-24 23:17:04 -05:00
bakpakin
6ca6949c2d Getting more work done on assembler, parer, and unit tests. 2017-11-20 21:39:44 -05:00
bakpakin
9a858d5a97 Adding some more unit tests for various components. 2017-11-06 09:44:10 -05:00
bakpakin
f6dcb07c8d More work. Too many changes to be listed. 2017-11-05 22:05:47 -05:00
bakpakin
a2ee028bd5 WIP 2017-11-01 17:53:43 -04:00
bakpakin
3efd400025 Huge number of changes. Still WIP. Refactoring and
changing C API model. This commit is not i a working state.
2017-09-09 14:39:51 -04:00
bakpakin
3ccd688438 Add gensym 2017-07-16 11:00:20 -04:00
bakpakin
a39a6fd97f More work on bootstrapping code. Have working macro expansion. 2017-07-15 16:56:03 -04:00
bakpakin
f0545865a8 More corrections to varargs. 2017-07-15 12:41:54 -04:00
bakpakin
57886db410 Making some changes. 2017-07-15 12:21:06 -04:00
bakpakin
8c20b7229a Refactor module and env code into separate files. 2017-07-12 14:47:09 -04:00
bakpakin
6a8ec0c895 Add -env- to repl. 2017-07-09 16:44:45 -04:00
bakpakin
53cead0bab Remove vm crash return and use error instead. 2017-07-09 16:15:44 -04:00
bakpakin
de9d7bcfdc Update representation of an environment. 2017-07-09 16:10:47 -04:00
bakpakin
1878ece2af Make compilation simpler. 2017-07-09 15:35:17 -04:00
bakpakin
8810c65f00 Remove old namespace functions from stl. 2017-07-09 15:14:18 -04:00
bakpakin
891c550980 Invert recursion guard to count down instead of up. 2017-07-09 13:31:30 -04:00
bakpakin
325059203d Correct behavior on 32 bit architecture when hashing pointers. 2017-07-09 13:09:20 -04:00
bakpakin
eef8a42ae7 Remove tostring in favor of string. 2017-07-03 22:20:39 -04:00
bakpakin
eeeb660120 Can only enter pending threads. 2017-07-03 16:15:16 -04:00
bakpakin
70efcc336b Move some string functions to a new file. 2017-07-03 13:44:58 -04:00
bakpakin
c4dd17a35e Change some comments. 2017-07-03 13:22:39 -04:00
bakpakin
961275116f Add symbol function 2017-07-03 11:22:23 -04:00
bakpakin
0cf278994d Make coloring changes to the repl 2017-07-02 20:51:52 -04:00
bakpakin
bfadf6ff12 Remove scratch memory functionality. 2017-07-02 19:52:44 -04:00
bakpakin
113c6cd6ad Add quoting with single quote 2017-07-02 17:35:38 -04:00
bakpakin
268bd5f954 Add keyword syntax for strings. 2017-07-02 17:24:33 -04:00
bakpakin
e2c78b36d0 Add symbol type. 2017-07-02 17:17:24 -04:00
bakpakin
db89a6c7ee Add description, short-description, and tostring as
separate stringifiers that have slightly different semantics.
description is for debugging, short-description is also
for debugging but prints less, and tostring is for coercing to
a string (similar to description, but strings are not changed and
buffers return their contents as a string).
2017-07-02 14:16:37 -04:00
bakpakin
2742e3679d Change name of debugp to description. Use it
the repl for easier inspection of structures.
2017-07-02 11:53:51 -04:00
bakpakin
3481ee5747 Whitespace 2017-07-01 21:51:16 -04:00
Calvin Rose
740367ec5c Add # comments to parser 2017-07-01 12:47:57 -04:00
Calvin Rose
171c0ce49e Allow yielding by transfering to nil 2017-07-01 11:25:13 -04:00
Calvin Rose
957a513fd6 More changes to threading model. 2017-07-01 11:17:29 -04:00
Calvin Rose
21bd960865 Add more tests
Reuse threads on gst_run when possible
change name of getline to gst_getline
2017-06-29 21:57:09 -04:00
Calvin Rose
7e46ead2f4 Add new tests. Add recursion guard to compile, serialize, and
deserialize.
2017-06-28 22:51:24 -04:00
Calvin Rose
a7a9ff7629 Add some extra functionality to tests. 2017-06-25 19:29:38 -04:00
Calvin Rose
d6967a564d Fix bug in compiler 2017-06-25 19:17:54 -04:00
Calvin Rose
1f8b671488 Replace map of vars with single element arrays 2017-06-25 16:52:15 -04:00