Calvin Rose
|
d47ee18b1a
|
Fix gc mark function in compiler.
GNU readline is not valgrind clean or it
is being used incorrectly.
|
2017-05-05 23:33:36 -04:00 |
|
Calvin Rose
|
bf2c16ccb0
|
Flesh out support for userdata
Add file reading via file objects.
Finalizer option for userdata.
|
2017-04-26 10:22:16 -04:00 |
|
Calvin Rose
|
5845434529
|
Add readline to repl for better experience
|
2017-04-19 12:56:29 -04:00 |
|
Calvin Rose
|
baa3544ca0
|
Readd the repl.
|
2017-04-17 22:14:35 -04:00 |
|
Calvin Rose
|
6e71984fc5
|
Add wrapping functions for easy conversion between c api and
internal values.
|
2017-04-17 18:46:28 -04:00 |
|
Calvin Rose
|
f52e290206
|
Allow parser to parse files rather than just a repl. I think
there are some memory leak issues (problems with gc).
|
2017-04-17 00:15:18 -04:00 |
|
Calvin Rose
|
e90b66af58
|
Add struct type.
|
2017-04-15 16:05:59 -04:00 |
|
Calvin Rose
|
e28e31f818
|
Begin implementing module system.
|
2017-04-12 21:21:46 -04:00 |
|
Calvin Rose
|
6365a007b6
|
More work on cleaning up string implementation.
|
2017-03-22 18:35:54 -04:00 |
|
Calvin Rose
|
841ee3696d
|
Add cache for strings.
|
2017-03-22 00:27:18 -04:00 |
|
Calvin Rose
|
f6e26d9893
|
Work on serialization. Move clibs into core.
|
2017-03-20 23:06:38 -04:00 |
|
Calvin Rose
|
9856142fef
|
Refactor code. Separate code into different modules to
separate the minimum runtime from auxiliary functions.
Change makefile to allow building static libraries.
|
2017-03-15 20:56:37 -04:00 |
|
Calvin Rose
|
91f2766dd0
|
Rename binary
|
2017-03-15 01:27:56 -04:00 |
|
Calvin Rose
|
3274e87a45
|
Work on simplifying calling procedure
|
2017-03-12 18:23:27 -04:00 |
|
Calvin Rose
|
b986e1b967
|
Redo calling convetion for more code reuse. Allow calling gst functions from c.
|
2017-03-10 00:09:42 -05:00 |
|
Calvin Rose
|
169e3de5a7
|
Work on basic stl. Add _ binding to repl for last value
|
2017-03-09 13:49:46 -05:00 |
|
Calvin Rose
|
69624495ec
|
Remove longjump/setjump from vm loop. Add out of memory
behavior option.
|
2017-03-08 15:08:46 -05:00 |
|
Calvin Rose
|
68f834f03b
|
Remove dsiasm from binary.
|
2017-03-08 10:54:50 -05:00 |
|
Calvin Rose
|
0d066d8754
|
Add tuple type.
|
2017-03-07 15:29:40 -05:00 |
|
Calvin Rose
|
7cdf33eb90
|
Modify some files. Also begin open addressing hash
dictionary for use in compiler. Might also move normal
object to open addressing for less pressure on gc.
|
2017-02-28 20:20:29 -05:00 |
|
Calvin Rose
|
33d09f98b1
|
Work on speeding up interpreter by moving state inside
interpreter loop.
|
2017-02-26 11:47:50 -05:00 |
|
Calvin Rose
|
fd34837265
|
Breaking up functionality into more modules.
|
2017-02-23 17:21:13 -05:00 |
|
Calvin Rose
|
439650f26a
|
Add get and set instructions. GC is still buggy and currently
crashes everything all the time. :(
|
2017-02-12 21:54:18 -05:00 |
|
Calvin Rose
|
b9a9a9303c
|
Several changes to VM and Compiler. Still WIP
and non functional.
|
2017-02-12 10:27:18 -05:00 |
|
Calvin Rose
|
9ffbdcb3e9
|
Add simple disassembler for debugging. Does not use labels.
|
2017-02-11 14:02:48 -05:00 |
|
Calvin Rose
|
3794ec3acd
|
More work on compiler.
* Fix up while special form
* Change Value functions to pass-by-value
|
2017-02-09 23:28:11 -05:00 |
|
Calvin Rose
|
0557c8b2a6
|
Consolidate files
* Move GC struct into VM for easier use.
* Put all data structures into one file
|
2017-02-09 18:52:19 -05:00 |
|
Calvin Rose
|
3d7e574e05
|
Fix some memory leaks and buffer overrun bugs after profiling
debugRepl with valgrind.
|
2017-02-09 15:58:19 -05:00 |
|
Calvin Rose
|
a80dd4bff3
|
First commit.
|
2017-02-09 15:02:59 -05:00 |
|