1
0
mirror of https://github.com/janet-lang/janet synced 2026-05-31 01:32:15 +00:00
Commit Graph

30 Commits

Author SHA1 Message Date
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 abbe6b13f1 Enable serialization of c functions. 2017-06-03 11:26:17 -04:00
Calvin Rose f066047112 Fix serilaization bug. Still need to serialize c functions. 2017-05-23 14:48:54 -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 88a24531de Make reflective compilation less stateful 2017-05-07 18:37:19 -04:00
Calvin Rose 6d3e3d8246 Remove faulty quoting logic in parser. 2017-05-07 18:20:11 -04:00
Calvin Rose 96a605fbc0 Fix variadic functions. 2017-05-07 16:48:35 -04:00
Calvin Rose f817610d4a More work on compiler. Still has memory leak? 2017-05-05 16:52:05 -04:00
Calvin Rose c6e9f24f82 Complete adding parser to scripting. 2017-05-03 19:59:27 -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 14f8b12706 Use 32 bit unsigned integers for stackframes. 2017-04-25 12:26:58 -04:00
bakpakin 0a96e45c4a Change object to table type.
Tables are simpler and don't do inheritance via metatables. This means
object polymorphism will be done through a different mechanism rather
than Lua-like metatables. Perhaps smalltalk style messaging using
functions as objects, or lisp-like method dispatch.
2017-04-24 21:00:56 -04:00
Calvin Rose a54548eaa0 Add 64 bit signed integers as a basic type. Will enable
more native bitwise operations and c integration at the expense
of complicating arithmetic.
2017-04-24 16:02:54 -04:00
Calvin Rose 81987dca45 More work. 2017-04-24 13:12:55 -04:00
Calvin Rose 5845434529 Add readline to repl for better experience 2017-04-19 12:56:29 -04:00
Calvin Rose 01e8749f39 Redo function call bytecode interface to be simpler and allow
for an apply like structure in the language
2017-04-19 09:02:12 -04:00
Calvin Rose f4a6f4073f Rename some fuctions in util. 2017-04-18 16:55:03 -04:00
Calvin Rose ea432242d3 Add license header to all source files. 2017-04-17 22:40:39 -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 f456de5fac Change object implementaion to use open hashing. Currently
using simple linear probing.
2017-04-16 09:39:41 -04:00
Calvin Rose e90b66af58 Add struct type. 2017-04-15 16:05:59 -04:00
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