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
|
1f37919f39
|
Rename boot.dst to core.dst
|
2018-07-04 00:21:18 -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
|
17685bd789
|
Refactor opereduce in cfuns.c
|
2018-07-02 19:53:35 -04:00 |
|
Calvin Rose
|
5e2de33ae7
|
Remove some c functions in favor of bytecode.
|
2018-07-02 00:12:36 -04:00 |
|
Calvin Rose
|
79225ad3d5
|
Add some inlining for a few builtins.
|
2018-07-01 19:35:45 -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
|
4e6fc341dc
|
Many updates to the sqlite module.
|
2018-06-23 19:19:26 -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
|
0cf10946b0
|
Add first version of marsh (marshaling).
|
2018-06-12 14:24:45 -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
|
4ecc88af37
|
Add some more string functions. Remove format.
|
2018-05-18 14:19:57 -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
|
6ac59251e9
|
Fix some very mild memory leaks in line.c and the do_bytes function (not
deiniting the parser).
|
2018-05-15 22:05:47 -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
|
ee01547b3a
|
Add some more fiber functions.
Add fiber.current and fiber.lineage
|
2018-05-10 20:25:49 -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
|
932a0324ee
|
More work on renaming functions. Change long string syntax to use
backticks. Allow custom masks in fibers for custom error and debug
handling.
|
2018-05-09 17:01:58 -04:00 |
|
Calvin Rose
|
f47323c915
|
Change convention for naming modules and functions.
|
2018-05-08 19:40:28 -04:00 |
|
Calvin Rose
|
0cd6cdc28b
|
Add some more opcodes for comparison with numeric types.
|
2018-05-07 12:34:04 -04:00 |
|
Calvin Rose
|
55f0e759d9
|
Add extra information in repl to show state of parsing.
|
2018-05-06 23:25:59 -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
|
507f9f9c57
|
Make global state thread local. This means multiple threads
of dst can run, but cannot yet share state.
|
2018-03-30 16:12:30 -04:00 |
|
Calvin Rose
|
0d5b57daee
|
Remove exit in favor of os-exit.
|
2018-03-28 21:24:54 -04:00 |
|
Calvin Rose
|
39d6bd573a
|
Add preliminary os lib.
|
2018-03-28 20:50:20 -04:00 |
|
Calvin Rose
|
da15dac16b
|
Fix an offset bug in closure creation.
|
2018-03-22 17:41:01 -04:00 |
|
Calvin Rose
|
0fd55282d8
|
Add error reporting to repl (initial stack traces)
|
2018-03-21 20:53:39 -04:00 |
|
Calvin Rose
|
855787b292
|
Add macroexpand and macroexpand1
|
2018-03-18 14:01:58 -04:00 |
|
Calvin Rose
|
e8dfe673f2
|
Update sourcemapping structure. Add seqs example file.
|
2018-03-15 23:28:30 -04:00 |
|
Calvin Rose
|
5738f6c8b1
|
Rename seq abstraction to iterator. Add random functions.
|
2018-03-15 17:19:31 -04:00 |
|
Calvin Rose
|
1ec704feb9
|
Remove pretty printer implemented in C.
|
2018-03-14 13:38:48 -04:00 |
|
Calvin Rose
|
c23ea536da
|
Add getline on unix.
|
2018-03-13 23:39:49 -04:00 |
|
Calvin Rose
|
2b1dd79f55
|
Work on emscripten support. Works with sync code.
|
2018-03-13 14:03:17 -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
|
0c3b0673ff
|
Enable debug opcode in vm and debug state for fibers.
|
2018-03-09 17:14:26 -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
|
1551bf6b48
|
Use flatter representation for function and environments.
|
2018-02-13 16:14:55 -05:00 |
|
Calvin Rose
|
2f4fd23884
|
Add per fiber stack limit.
|
2018-02-12 17:36:29 -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
|
af6e6ded35
|
Add configurable stack overflow to prevent infinite recursion
without waiting for out of memory.
|
2018-02-12 11:49:10 -05:00 |
|
bakpakin
|
7f693796ea
|
Differentiate total order comparison and numeric comparison
|
2018-02-09 11:57:58 -05:00 |
|
Calvin Rose
|
e047b39a87
|
More work on self hosting the client program.
|
2018-02-07 13:19:34 -05:00 |
|
Calvin Rose
|
3e1f031576
|
Self host the repl, remove linenoise, and selfhost the
main client.
|
2018-02-07 00:44:51 -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
|
50bfa8de3f
|
Add boot script which is loaded on start up.
|
2018-01-31 17:39:18 -05: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
|
ce5708af98
|
Switch over to Cmake fully.
|
2018-01-29 15:46:26 -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
|
2bd20c3cb3
|
Addition and subtraction inlining.
|
2018-01-25 18:49:08 -05:00 |
|
bakpakin
|
5460ff19bf
|
Begin C Function specialization in the compiler.
|
2018-01-24 17:59:00 -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
|
911b0b15e8
|
Fix some bugs with inner closures.
|
2018-01-21 14:39:32 -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 |
|
bakpakin
|
30f62ca454
|
Major refactor and restructure. Add CMake for anticipated windows
support.
|
2018-01-19 16:43:19 -05:00 |
|