Commit Graph

4238 Commits

Author SHA1 Message Date
bakpakin 60b8f436f0 Proper order for libraries in Makefile. 2018-01-12 17:42:14 -05:00
bakpakin efb5f19d27 Fix gcc errors 2018-01-12 17:38:06 -05:00
bakpakin 6679fb299f add -lm flag 2018-01-12 17:33:56 -05:00
bakpakin 59bed71a2c Make some unit tests pass. Fix transfer to new fiber. 2018-01-12 16:25:24 -05:00
bakpakin f8174f192c Fix some vararg behavior in tail calls. 2018-01-12 13:54:37 -05:00
bakpakin 204caa6d8f Factor out language specials to separate files in compiler.
Add transfer special. */
2018-01-12 10:41:27 -05:00
bakpakin c1fa521b58 Add buffer overflow detection to the buffer class
when the inherent 2GB limit is reached for a single buffer.
2018-01-06 13:25:45 -05:00
bakpakin 605848b217 Rename DstValue to Dst for easier access. Move vector.c into
util.c and make public API smaller. Pad strings and symbols with
extra 0 byte for better interop with C.
2018-01-06 11:09:15 -05:00
bakpakin 2771171658 Much work on compiler. Fixing bugs and gradually cleaning
up code. Generalized some vector code.
2018-01-05 16:17:55 -05:00
bakpakin e4735e14d2 More compiler bug fixes. Added some features and functions like varargs. 2018-01-03 21:36:10 -05:00
bakpakin f273aa8b1b Add vars, split up headers, remove fiber->ret, add comparators, etc. 2017-12-30 16:46:59 -05:00
bakpakin 34a83839f5 Add utf-8 compatibility in parser. Symbols can
be valid utf-8 strings
2017-12-20 23:03:34 -05:00
bakpakin 8eea6e2a70 minor changes. 2017-12-16 23:36:21 -05:00
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 9f910d9ab7 Add missing header file. 2017-11-26 20:25:20 -05:00
bakpakin baa4e20b79 Some more changes to the nanbox_test 2017-11-26 20:20:30 -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 9187d4c1e2 Create xxd clone for build time gst scripts. 2017-07-15 23:25:10 -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 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