Commit Graph

50 Commits

Author SHA1 Message Date
Calvin Rose 75c66ea6dd Refactor native module declarations. marshal can now
serialize entire environment.
2018-08-26 14:35:01 -04:00
Calvin Rose ecdef8de8b Working fiber marshaling. 2018-08-24 11:35:08 -04:00
Calvin Rose 510feeed7f Allow marshaling of more functions for core.
Fix indentation in some files.
2018-08-22 21:41:25 -04:00
Calvin Rose 50aefc8865 Preliminary fiber marshaling 2018-08-21 16:36:49 -04:00
Calvin Rose 910cfd7ddf Lots of updates. Function marshaling WIP. 2018-08-19 20:21:27 -04:00
Calvin Rose 48c2654312 Local changes. 2018-08-07 00:54:47 -04:00
Calvin Rose 11292c6bb3 Update require to handle natives better. 2018-07-16 22:55:45 -04:00
Calvin Rose 90496b99e8 Fix os.getenv error. 2018-07-11 19:11:34 -04:00
Calvin Rose 1acd2d1de7 Inlining for all built in comparators. 2018-07-09 21:24:22 -04:00
Calvin Rose 5b15ad9ff8 Try and fix os.clock on windows. 2018-07-08 20:54:41 -04:00
Calvin Rose 3d7fff659a Make native modules optional. 2018-07-04 14:00:11 -04:00
Calvin Rose 547529ebb2 Refactor dst_view_* functions. 2018-07-04 13:21:30 -04:00
Calvin Rose a018f9f54a Major refactor. Move files around, merge compiler into
core and other changes, work on inlining many c functions.
2018-07-03 23:07:35 -04:00
Calvin Rose 6822400abe Fix large function compilation issue. 2018-07-01 15:53:57 -04:00
Calvin Rose fde9751eab Move asm into core and rename to asm/disasm (no prefix) 2018-06-29 22:52:55 -04:00
Calvin Rose 28cf753fa2 Source mapping v4 (line and column instead of byte offsets). 2018-06-29 11:13:06 -04:00
Calvin Rose f93c84c21f Source mapping v3 (performance improvements, better decoupling from parser). 2018-06-29 10:41:26 -04:00
Calvin Rose 2e472ec9a3 Version 2 of new source mapping. 2018-06-29 01:16:46 -04:00
Calvin Rose bb406133de New sourcemaps v1. 2018-06-28 23:37:04 -04:00
Calvin Rose 363a17ff8c Convert get, put and length to normal functions, not c functions. 2018-06-17 13:55:02 -04:00
Calvin Rose 2a87dada47 Rename fiber.resume and fiber.yield to
resume and yield.
2018-06-09 13:08:30 -04:00
Calvin Rose b5ed4a875f Change some definitions and remove thoughts.md 2018-06-02 19:16:13 -04:00
Calvin Rose b09bf72490 Change primary looping macro to 'loop' instead of 'for'. 2018-05-23 22:08:36 -04:00
Calvin Rose f295692b50 Update copyright to 2018. Add string methods. 2018-05-17 23:41:20 -04:00
Calvin Rose 51bdc41014 Change fiber signal model to add user signals. This
should allow easier implementations of eventloops,
threadpools, or custom data flows with fibers.
2018-05-16 22:09:36 -04:00
Calvin Rose c6f79eca6d Make setting up stl easier. Add shared library output to Makefile. 2018-05-14 21:52:51 -04:00
Calvin Rose dafc121f4d Change c function macros to be explicitly non functional by
capitalizing them.
2018-05-12 20:31:28 -04:00
Calvin Rose ac4b46bdb1 Fix dst_arg_bytes macro to correctly catch bad input. 2018-05-09 23:43:56 -04:00
Calvin Rose 181a38f412 Add sqlite3 native module to repo. 2018-05-05 23:51:29 -04:00
Calvin Rose 1e4f221170 Move strtod to core, and rename parse-number, parse-integer, and
parse-real functions to scan-number, scan-integer, and scan-real.
Add very basic format function for formatting strings for printing.
2018-05-01 11:06:31 -04:00
Calvin Rose 1205ca5cad Add beginning of intorductory doc. Add prototypes to pretty print
output.
2018-04-30 17:05:42 -04:00
Calvin Rose 53f9c18669 More work on improving errors. 2018-04-29 20:13:04 -04:00
Calvin Rose 10934bcfb9 Add errorhandling helper functions and macros for writing c functions. 2018-04-28 18:10:57 -04:00
Calvin Rose 027b2a81c2 Shrink the public interface by hiding internal state. 2018-03-31 16:42:41 -04:00
Calvin Rose 39d6bd573a Add preliminary os lib. 2018-03-28 20:50:20 -04:00
Calvin Rose 1ec704feb9 Remove pretty printer implemented in C. 2018-03-14 13:38:48 -04:00
Calvin Rose 2a0dc5f1ad Switch to assymetric coroutines instead of symmetric. 2018-03-11 15:35:23 -04:00
Calvin Rose 0b6ac1698c Add proto field to tables to allow prototypal inheritance. 2018-03-10 13:34:46 -05:00
Calvin Rose eee453d2c0 Update thoughts.md, and add dst_call and dst_call suspend.
dst_call_suspend migt be redundant (suspension of GC is easy enough).
2018-03-04 18:56:13 -05:00
Calvin Rose a614816a04 Update func env representation to not store envs in function
objects.
2018-02-12 16:43:59 -05:00
Calvin Rose a673b7e326 Fix small compiler bug 2018-02-03 17:22:04 -05:00
Calvin Rose 35ddc70888 Move ast into parser. Map keywords to symbols instead of
strings.
2018-02-03 13:55:55 -05:00
Calvin Rose ccdf758e83 Get dst to compile on windows 2018-02-01 17:09:22 -08:00
bakpakin 4f74d57359 Refactor stl to corelib and stl. Corelib is part of vm, stl
is part of dst language. Add bootstrapping code directly into stl.
Stl is now logically grouped with compiler.
2018-01-29 23:38:49 -05:00
bakpakin b305a7c9bb Add macros in compiler. 2018-01-28 15:29:47 -05:00
bakpakin 8fe9881187 More work on adding c functions. Added buffer literals again. 2018-01-27 15:15:09 -05:00
bakpakin 26c8145893 Move ast to core. Add symbol function to stl. 2018-01-21 17:08:11 -05:00
bakpakin 42a88de9e7 Add quick asm for adding apply and error to the stl. 2018-01-21 16:41:15 -05:00
bakpakin d68eae9592 Add bytecode verification 2018-01-20 17:21:59 -05:00
bakpakin 065c4cfac1 Gitignore was ignore files. 2018-01-20 11:04:30 -05:00