bakpakin
891c550980
Invert recursion guard to count down instead of up.
2017-07-09 13:31:30 -04:00
bakpakin
b19c834cf4
Change comment in gst.h
2017-07-09 13:24:38 -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
31ec1e9147
Add install and uninstall make targets.
2017-07-02 14:56:31 -04:00
bakpakin
7a9e991c41
Add color options to repl.
2017-07-02 14:42:30 -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
62987de75b
Update README.md
2017-07-01 22:46:56 -04:00
bakpakin
4a131fe47e
Add some command line options to the client program.
2017-07-01 22:34:31 -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
c380f8a2ca
Add OSX to travis.
2017-06-29 22:01:50 -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
9d66d85778
Add travis badge
2017-06-25 19:56:17 -04:00
Calvin Rose
092fd68935
Remove -Wpedantic
2017-06-25 19:53:55 -04:00
Calvin Rose
b23fc136dd
Remove readline and add travis
2017-06-25 19:49:07 -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
Calvin Rose
29a39c47b0
Add var and def. Make them behave the same
...
but have different implementations in top
level scope in order to enable incremental compilation and repl.
2017-06-25 16:36:20 -04:00
Calvin Rose
c3d65cb91d
Remove lots of headers. Add parse c function.
2017-06-24 14:27:29 -04:00
Calvin Rose
70478a410b
Add errorParent to threads.
2017-06-19 23:01:34 -04:00
Calvin Rose
6c597f6b5b
Add bitwise operators
2017-06-11 09:38:37 -04:00
Calvin Rose
a382c62db8
Make some changes to README.md with things to do.
2017-06-10 17:44:02 -04:00
Calvin Rose
abbe6b13f1
Enable serialization of c functions.
2017-06-03 11:26:17 -04:00
Calvin Rose
c422132208
Remove vscode subdirectory.
2017-06-03 06:21:39 -04:00
Calvin Rose
f066047112
Fix serilaization bug. Still need to serialize c functions.
2017-05-23 14:48:54 -04:00
Calvin Rose
145688b49f
More work on serializer.
2017-05-12 00:03:00 -04:00
Calvin Rose
58edb63607
More work on serilaization
2017-05-11 21:30:18 -04:00
Calvin Rose
6220b70105
More work in serialization
2017-05-11 17:08:29 -04:00
Calvin Rose
b7083f6f18
More work on dogfood repl.
2017-05-09 20:06:53 -04:00
Calvin Rose
fd72219a2a
Add tran keyword to allow for continuations.
2017-05-09 19:21:30 -04:00
Calvin Rose
0e29b52d96
Add robinhood hashing to structs.
...
This corrects changes in internal structure when values
were inserted in different orders (which was previously
incorrect.) Robinhood hashing should correct this by
making the internal structure of the hashtable invariant
of insertion order. This, in turn, allows naive and deterministic equality, comparison, and hashing of structs.
2017-05-09 13:20:28 -04:00
Calvin Rose
8aa99556e7
Begin adding support for multiple lightweight threads.
...
Can be used to implement coroutines, error handling,
and more.
2017-05-08 17:07:16 -04:00
Calvin Rose
6246c43e22
Fix integer division by 0 error.
2017-05-08 12:08:48 -04:00
Calvin Rose
4fd398ac97
Add simple example repl. Will eventually add
...
support for error handling, macros and other
compile time transformations. This will eventually become the full
language.
2017-05-08 11:03:06 -04:00
Calvin Rose
058780085b
Begin implementing a repl in gst
2017-05-07 21:36:04 -04:00