1
0
mirror of https://github.com/janet-lang/janet synced 2024-12-26 08:20:27 +00:00
Commit Graph

159 Commits

Author SHA1 Message Date
Calvin Rose
20bb5a18f7 Remove symbol type in favor of only strings. Anticipate
addition of struct type, which will be an immutable hashtable.
2017-04-14 13:41:32 -04:00
Calvin Rose
e28e31f818 Begin implementing module system. 2017-04-12 21:21:46 -04:00
Calvin Rose
ded3d06387 Use fewer special forms in c compiler. This should
make the self hosted compiler easier to make. The
C version of the compiler does not need to be efficient.
2017-04-12 10:31:50 -04:00
Calvin Rose
a0d3600ac0 Fix gitignore 2017-03-26 15:44:57 -04:00
Calvin Rose
ac50f6232e More work on cleaing up code. 2017-03-26 11:47:58 -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
4c35ee0a2c Add first class symbol type. 2017-03-19 17:29:25 -04:00
Calvin Rose
a2f3fa3b3d Work on deserialization for loading bytecode and
other objects.
2017-03-19 12:16:40 -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
ba82ba414a Retabbed things 2017-03-15 01:26:45 -04:00
Calvin Rose
9f09a19feb Add quoting and a global gc root. The gc root
provides global variables.
2017-03-14 19:13:17 -04:00
Calvin Rose
84b7e96921 Work on more fixes to calling convention 2017-03-14 15:55:50 -04:00
Calvin Rose
3274e87a45 Work on simplifying calling procedure 2017-03-12 18:23:27 -04:00
Calvin Rose
15dd15278c Ignore tags file 2017-03-11 17:06:47 -05:00
Calvin Rose
1611a9eeb4 Remove tags 2017-03-11 17:06:22 -05:00
Calvin Rose
4191b86895 Remove thread.c 2017-03-11 17:05:59 -05:00
Calvin Rose
1effd9e740 More work on open hashing implementation of objects.
Add metatable support for callable objects.
2017-03-11 17:04:59 -05:00
Calvin Rose
9c94bfab4d Retab value.c 2017-03-10 00:26:28 -05:00
Calvin Rose
ce759d901e Keep readme minimal for now 2017-03-10 00:23:59 -05:00
Calvin Rose
18493ea076 Retab some files, delete some other files 2017-03-10 00:22:43 -05: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
ca0f8939ef Begin stl 2017-03-08 17:34:25 -05:00
Calvin Rose
18aaf9480b Add initial untested support for varargs in vm 2017-03-08 16:03:14 -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
1e8c1bb74c Handle comments in parser. 2017-03-08 10:34:22 -05:00
Calvin Rose
40b52dbe70 Add variadic arithmetic special forms 2017-03-08 10:21:09 -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
08319e62cb Fix issue with throwing uncaught errors. 2017-02-26 22:23:08 -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
5ec6e46f1a Add error handling and try catch expression. 2017-02-22 18:19:46 -05:00
Calvin Rose
6521ee69bd Various small changes. 2017-02-19 11:20:18 -05:00
Calvin Rose
69260fa3bd Fix some gc mark issues and change dict to obj. 2017-02-16 15:10:59 -05:00
Calvin Rose
6677dff337 Rename everything to be prefixed with gst. No particluar meaning
or reason for that name, but its available and it irked me to see
non prefixed c code for something that is supposed to be emeddable.
2017-02-15 21:02:00 -05:00
Calvin Rose
8cdc0610e3 Reintroduce a separate Thread objects for threads instead of using arrays. 2017-02-14 20:45:34 -05:00
Calvin Rose
d28a7174af Finish removing FORM type as well as symbol type. 2017-02-13 18:58:56 -05:00
Calvin Rose
9cbe36cb01 Remove FuncEnv and FuncDef types as implementation details 2017-02-13 16:48:11 -05:00
Calvin Rose
42ecaf301a Remove ValuePrint. Improve ValueToString for reference types. 2017-02-13 00:11:30 -05:00
Calvin Rose
37faac1f8a Fix read after free bug with GC sweep. 2017-02-12 23:45:52 -05:00
Calvin Rose
c64282f8bf Still searching for the bug, which seems to have to do
an Array created in the copmile phase being freed early.
2017-02-12 22:25:17 -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
f2d6b979f0 Merge branch 'master' of git+ssh://eng-grid.bu.edu/home/calsrose/code/interp 2017-02-12 15:55:45 -05:00
Calvin Rose
4a15052d38 . 2017-02-12 15:53:52 -05:00
Calvin Rose
fccc7f25b5 Make some changes and begin work on macros. 2017-02-12 15:20:41 -05:00