1
0
mirror of https://github.com/janet-lang/janet synced 2024-12-02 21:09:55 +00:00
Commit Graph

179 Commits

Author SHA1 Message Date
Calvin Rose
c0e373f420 Add some test code and fix sqlite3 native example. 2018-05-17 13:34:11 -04:00
Calvin Rose
ed9037e603 Remove defdo and defdo- 2018-05-16 23:09:28 -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
0fd9224e4a Proper re-entry into debug state nested fibers. 2018-05-16 09:24:34 -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
80ae7e80e6 Update state.h 2018-05-14 09:55:34 -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
70e52d91c4 Add popen function to io.c 2018-05-11 08:13:26 -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
584c75b3f6 Update Makefile for faster builds. 2018-05-10 11:11:18 -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
ea9855a93d Update parse-status to reflect new long-string syntax better. 2018-05-09 17:14:29 -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
104b09d848 Make the -s option more useful. 2018-05-07 01:04:56 -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
7e63427208 Update strtod.c to be less accepting of some badly formed numbers. 2018-05-06 15:27:52 -04:00
Calvin Rose
b31791200b Add long string syntax to dst. 2018-05-06 13:28:09 -04:00
Calvin Rose
181a38f412 Add sqlite3 native module to repo. 2018-05-05 23:51:29 -04:00
Calvin Rose
06b80e56eb Merge branch 'master' of github.com:bakpakin/dst 2018-05-05 14:42:28 -04:00
Calvin Rose
238cec8f32 Add each. 2018-05-05 14:41:47 -04:00
bakpakin
d9e5019a71 Add -e option to dst for executing inline scripts from the shell. 2018-05-05 14:05:56 -04:00
Calvin Rose
256aba199f Remove foreach. 2018-05-01 23:38:53 -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
e4434f74b6 Fix some typos in boot.dst 2018-04-30 18:11:19 -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
344fa031b2 Add stub CMakeLists.txt for native module. 2018-04-26 16:57:23 -04:00
Calvin Rose
99709a68fd Add example file for compiling native modules (hello.so). 2018-04-26 13:13:31 -04:00
Calvin Rose
8b9bd41205 Fix bug with false literals as keys not printing. 2018-04-02 16:10:16 -04:00
Calvin Rose
534c936e14 Fix infinite recursion on defn and derivatives on invalid
input.
2018-04-01 18:24:04 -04:00
Calvin Rose
1110267c9d Update maxtriangle example, extend map function, and
add extremes functions (max, min, order-max, order-min, extreme)
2018-04-01 15:08:51 -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
9dabc6bee3 Update assembly doc. 2018-03-30 12:17:03 -04:00
Calvin Rose
0d5b57daee Remove exit in favor of os-exit. 2018-03-28 21:24:54 -04:00
Calvin Rose
e21a69920f Add sorting to pretty printer. 2018-03-28 21:16:12 -04:00
Calvin Rose
39d6bd573a Add preliminary os lib. 2018-03-28 20:50:20 -04:00
Calvin Rose
f4ef0ae0bb Add sorting to boot.dst 2018-03-28 16:38:05 -04:00
Calvin Rose
73ead5c2de Update core namespace. Clean up some code,
and put more emphasis on indexed data-structure combinators
instead of iterators.
2018-03-28 13:58:56 -04:00
Calvin Rose
d9f6c7b069 Make pretty printer prettier. 2018-03-26 13:36:58 -04:00
Calvin Rose
6ace978ab8 Merge branch 'master' of github.com:bakpakin/dst 2018-03-25 21:12:43 -04:00
Calvin Rose
44d2049c94 Update lazyseqs.dst and boot.dst 2018-03-25 20:39:38 -04:00
bakpakin
080caf31a7 Add triangles examples. 2018-03-25 18:51:31 -04:00
Gavlooth
5ff0367d0f Fix if-let when-let and add put-in (assoc-in) 2018-03-25 21:33:03 +03:00
Gavlooth
1bc5705667 Fix if-let when-let and add put-in (assoc-in) 2018-03-25 14:47:45 +03:00
Calvin Rose
a3ed7327c9 Make array literals require preceding @ character. 2018-03-24 12:48:42 -04:00
Gavlooth
9f90dc1e1f Fix some typos 2018-03-24 07:46:11 +02:00
Gavlooth
0ebc95aa2b Improve lazy2iter and fix a typo in specials.c 2018-03-24 07:46:05 +02:00
Calvin Rose
41d5b5cb90 Fix some behavior with parsing integers. 2018-03-24 00:25:59 -04:00
Calvin Rose
0b25284aa9 Expose parse-number function. 2018-03-24 00:11:44 -04:00
Calvin Rose
89ecd43115 Move functions in util.dst to boot.dst. 2018-03-23 18:36:56 -04:00
Calvin Rose
da15dac16b Fix an offset bug in closure creation. 2018-03-22 17:41:01 -04:00
Calvin Rose
82845bc7a3 Update error reporting. 2018-03-21 21:48:19 -04:00
Calvin Rose
0fd55282d8 Add error reporting to repl (initial stack traces) 2018-03-21 20:53:39 -04:00
Calvin Rose
e114ec0095 Move web client code. 2018-03-19 17:13:36 -04:00
Calvin Rose
3e1e258546 Fix a compiler bug in the do special form. 2018-03-19 14:51:18 -04:00
Calvin Rose
105f5f3b2d Formfeed is whitespace. 2018-03-18 14:38:40 -04:00
Calvin Rose
855787b292 Add macroexpand and macroexpand1 2018-03-18 14:01:58 -04:00
Calvin Rose
82e5d915f7 Add makefile back. 2018-03-18 09:17:20 -04:00
Calvin Rose
8da838e12c Add macros for imperative programming (c style sugar). 2018-03-16 18:31:18 -04:00
Calvin Rose
4a76f2ae32 Replace varset! with algol style := 2018-03-16 18:15:34 -04:00
Calvin Rose
f5213e4064 fix doc 2018-03-16 15:58:11 -04:00
Calvin Rose
110c780747 Update apply to be variadic, and keep non variadic form as apply1 2018-03-16 15:45:24 -04:00
Calvin Rose
72d8e74a71 Update assembly and add example. 2018-03-16 14:34:48 -04:00
bakpakin
d3a1d97649 Update boot.dst and lazyseq examples. 2018-03-16 13:40:10 -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
5f0bd1e082 Update code. 2018-03-14 21:46:56 -04:00
Calvin Rose
8ec29d9326 Move pretty printer into boot.dst 2018-03-14 19:08:00 -04:00
Calvin Rose
c0ac44a650 Fix description semantics. describe returns string, does not print. 2018-03-14 18:57:26 -04:00
Calvin Rose
1ec704feb9 Remove pretty printer implemented in C. 2018-03-14 13:38:48 -04:00
Calvin Rose
d5e4496e95 Change repl prompt. 2018-03-14 10:54:32 -04:00
Calvin Rose
7ec2efcf6d Simple fix for end of file in getline. Some code changes in getline as well. 2018-03-14 10:49:26 -04:00
Calvin Rose
58d81d44f9 Fix windows build 2018-03-13 23:52:27 -04:00
Calvin Rose
c23ea536da Add getline on unix. 2018-03-13 23:39:49 -04:00
Calvin Rose
9cb7c92ca7 Add some builtin functions and some examples. 2018-03-13 16:40:56 -04:00
Calvin Rose
2b1dd79f55 Work on emscripten support. Works with sync code. 2018-03-13 14:03:17 -04:00
Calvin Rose
61645c82b1 Add clojure style threading macros. 2018-03-12 12:47:05 -04:00
Calvin Rose
e393e3dda0 Allow destructuring in function args 2018-03-12 02:07:55 -04:00
Calvin Rose
8445b1187f Add defn- form for private defs. 2018-03-12 00:57:13 -04:00
Calvin Rose
3b2658150e Update boot.dst for better functionality (require, macros,
documentation, cond, let, etc.)
2018-03-12 00:26:13 -04:00
Calvin Rose
1ba93c5112 Update debug code for fibers. 2018-03-11 18:06:47 -04:00
Calvin Rose
807f9818a5 Add let macro. 2018-03-11 16:30:38 -04:00
Calvin Rose
cace92af95 Fix broken windows build. 2018-03-11 15:42:59 -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
e124029ae3 Update asm format for sourcemaps to use pairs for sourcemap entries. 2018-02-12 12:28:58 -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