Commit Graph

71 Commits

Author SHA1 Message Date
27c243b650 changing compiler code to preserve some debugging information 2021-01-27 08:47:08 +00:00
aee64add9b preparing to produce debug information 2021-01-26 10:10:18 +00:00
b5fe1068d0 found a bug upon VM abortion. yet to fix it 2021-01-24 15:53:35 +00:00
4ec9395543 enhanced the new compiler to produce working bytecodes for the #() list 2021-01-24 15:45:28 +00:00
c193728e3f adding some work-in-progress code to store debugging information for generated byte codes 2021-01-03 13:51:23 +00:00
0ae149a010 fixed to reset hcl->sp before returning from hcl_execute() 2020-12-31 19:03:37 +00:00
f68b80143a switching GC from semi-space copying to mark-sweep 2020-12-31 17:48:47 +00:00
74e6511b9c cleaned up code and build files 2020-11-15 10:26:14 +00:00
1fc06dac48 cleaned up build files 2020-11-15 09:56:06 +00:00
0ad4d378ee Added some incomplete code for process-switching 2020-10-15 12:57:05 +00:00
17b582a5f2 removed irrelevant comments 2020-10-13 17:25:29 +00:00
2557809d64 removed the unneeded sp field from hcl_context_t 2020-10-13 17:20:01 +00:00
51f465e5fc fixed non-local return behaviors 2020-10-13 14:44:00 +00:00
2f1abbe03e working on return-from-home for non-local return 2020-10-10 17:36:33 +00:00
372c0e16ee added hcl_block_t to express a base block. no more reuse of hcl_context_t for the base block 2020-10-09 07:14:32 +00:00
59da10458d enhancing the compiler and hcl_execute() for better interactive use 2020-10-08 09:25:54 +00:00
a46914e9d0 fixing compiler bugs regarding MAKE_FUNCTION and literal frame rebasing 2020-10-07 08:06:49 +00:00
b35874d5d5 debugging the compiler 2020-10-06 09:40:39 +00:00
a0e9f16cf3 fixing more bugs.. 2020-10-05 14:49:54 +00:00
5c30d44d15 writing code for function activation using function-local literal frame 2020-10-05 09:37:26 +00:00
5d6f6cdcc8 fixing types of some fields in hcl_context_t and hcl_function_t for clarity and consistency 2020-10-04 19:34:53 +00:00
a78454fd77 fixed a gc error not fixed in the previous commit 2020-10-04 19:07:21 +00:00
4d0f0e1f9e changing vm implementation a bit. this commit is buggy 2020-10-04 18:21:05 +00:00
5b7b2c0dea still experimenting to find a good way to represent byte codes and literal frames in the interactive mode 2020-09-28 15:44:04 +00:00
4d6b2f5dbf experiments... 2020-09-22 09:19:53 +00:00
501d1277a8 adding some experimental code 2020-09-19 11:55:58 +00:00
4a4e188a5c added --enable-full-liw to configure.ac 2019-04-17 05:51:36 +00:00
d0a42cdfae reorganized some callback functions into cb-impl.c 2018-11-03 15:57:14 +00:00
86acc0112d cleaned up some code 2018-11-02 14:15:28 +00:00
fe27ae5d37 dropped cli-mode code. it turned out to be not effective 2018-08-08 03:41:17 +00:00
4f21abf7d5 Added a work file 2018-08-07 16:05:41 +00:00
b5f469f9b0 wrote more compiler mode to handle input in the cli mode 2018-08-07 11:04:38 +00:00
5e4b36bbe4 added more experimental code for the cli mode 2018-08-06 10:41:38 +00:00
46344a78aa enhanced the cli-mode reader a bit 2018-08-04 00:59:35 +00:00
01e8279ac6 added experimental code to execute an external command 2018-08-02 17:09:32 +00:00
3c54f5e860 introduced the new type hcl_bitmask_t 2018-04-26 04:39:20 +00:00
44df07c1e8 Added partial sample program to accept requests over a socket 2018-03-12 10:39:13 +00:00
873bc033b5 added hcl_getip(), hcl_getbclen(), hcl_getlflen()
renamed vm_checkpoint to vm_checkbc while adding a new parameter
2018-03-11 11:16:28 +00:00
fac203eecd changed the position of abortion check 2018-03-11 03:05:42 +00:00
4443f9cdc2 added hcl_abort()
taken out vm_startup and vm_cleanup from hcl_vmprim_t and moved them to hcl_cb_t
2018-03-10 17:53:44 +00:00
e5499cda1b renamed hcl_purgeatdic() to hcl_zapatdic()
exposed hcl_moveoop() 
extended the meaning of the kernel bits in the object flags
extended hcl_pfbase_t to include the type - one of HCL_PFBASE_FUNC, HCL_PFBASE_VAR, HCL_PFBASE_CONST. HCL_PFBASE_CONST not fully implemented yet
2018-03-08 14:18:30 +00:00
dc14ead9d7 fixed a wrong index used when getting the mod pointer into/from the prim object 2018-02-28 05:04:42 +00:00
8bcade7a2e changed the prototype of hcl_pfimpl_t to accept a hcl_mod_t* pointer 2018-02-28 04:52:01 +00:00
b97e2da6af enhanced the logfmtv to handle encoding conversion of the format string 2018-02-26 15:24:45 +00:00
75526643de got rid of hcl_getlastretv() but let hcl_execute() and hcl_executefromip() to return the returnv value 2018-02-22 12:57:31 +00:00
a7fcf50a89 added hcl_getlastretv().
enhanced hcl_hashobj() to return hash values for nil, true, false
2018-02-22 07:41:03 +00:00
ad0534a18e added --enable-unicode to configure.ac
cleaned up unnecessary code
2018-02-21 07:37:10 +00:00
a29e4a3edc added some builtin modules, but without many functions in them 2018-02-15 15:36:15 +00:00
8492bb8bd9 mapped a dotted identifer to a primitive function 2018-02-12 10:50:44 +00:00
46602c4511 renamed prim to pf.
added module manipulation functions
2018-02-09 04:24:50 +00:00