Commit Graph

78 Commits

Author SHA1 Message Date
5f7dc95f40 writing code to implement return variables 2021-05-09 15:32:54 +00:00
2cd3a0cc6e enhancing the compiler to support the variable argument list with the ellipsis 2021-05-07 08:53:01 +00:00
35f3393bf5 improving function block and control block handling in the compiler code 2021-04-09 08:22:40 +00:00
82d0c1ccca fixed some compiler bugs 2021-02-01 13:20:46 +00:00
9c3c3569e2 removed some unneeded code.
changed the source input handler to set the name field for the main stream
2021-01-30 16:13:27 +00:00
bda1de2fee cleaned up a bit 2021-01-29 17:24:13 +00:00
ea31979712 removed unneeded code 2021-01-29 09:41:39 +00:00
751671d849 renamed hcl_read2() and hcl_compile2() to hcl_read() and hcl_compile() respectively 2021-01-29 08:40:10 +00:00
13c64e9bf2 removed hcl_read() and hcl_compile().
in the next commit(), hcl_read2() and hcl_compile2() will get renamed to hcl_read() and hcl_compile() respectively
2021-01-29 08:35:31 +00:00
27c243b650 changing compiler code to preserve some debugging information 2021-01-27 08:47:08 +00:00
7dd8cc2abd updated lambda/return/return-from-home compiling code in the new compiler 2021-01-21 14:59:01 +00:00
919ab8f57e coding a better compiler 2021-01-17 17:45:39 +00:00
5b046b232e more code to implement a new object reader 2021-01-10 16:04:36 +00:00
09c2352666 changing code to improve the compiler 2021-01-09 16:53:35 +00:00
a8865a8a0b attempting to preserve token location between the reader and the compiler 2021-01-06 09:37:29 +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
f68b80143a switching GC from semi-space copying to mark-sweep 2020-12-31 17:48:47 +00:00
d2f6e889db minor whitespace removal from code 2020-10-15 13:47:52 +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
a20589ddf5 added the _instsize field to hcl_t, hcl_server_t, hcl_client_t 2019-06-21 12:36:25 +00:00
2b5c4d0c82 added hcl_flushio() and HCL_IO_FLUSH 2019-04-17 05:37:56 +00:00
6f070418dc removed unnecessary restoration code in string_to_fpdec() 2019-01-08 08:57:37 +00:00
fe27ae5d37 dropped cli-mode code. it turned out to be not effective 2018-08-08 03:41:17 +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
aa745d21fd fixed many bugs in cli mode reader 2018-08-05 18:46:54 +00:00
46344a78aa enhanced the cli-mode reader a bit 2018-08-04 00:59:35 +00:00
a2d4d37d2e add a bit of code into the cli mode reader 2018-07-31 15:51:16 +00:00
da36b2deab hmm.. just a few lines of cli mode code 2018-07-30 15:37:03 +00:00
58e5f94ddf added more code to read_object_in_cli_mode() 2018-07-29 08:01:43 +00:00
81e1a64966 started adding an new experimental reader 2018-07-29 07:27:10 +00:00
0f92c54f28 added hcl_getsynerrnum() and enhanced EOF handling 2018-07-28 04:08:09 +00:00
1f25d5c7ff add some json parsing code 2018-04-22 18:18:45 +00:00
b7f6c61e5a touched up an error message shown for an invalid hashed literal encountered whose first character after # is invalid 2018-04-10 10:10:50 +00:00
fd3a812cf7 renamed some function names for naming consistency 2018-04-07 15:54:16 +00:00
39da3d47fb set salit.size to 0 forcibly in get_symbol_array_literal() 2018-04-07 15:09:02 +00:00
1df93d0be6 fixed an error handling issue in get_symbol_array_literal() 2018-04-07 06:28:54 +00:00
d5942d9096 changed hcl_seterrxxx() functions not to set the errnum field again for failures in internal operations, especially in hcl_convxxx() 2018-04-06 14:59:44 +00:00
c8fd7b1c60 changed hcl_seterrxxx() functions 2018-04-06 14:37:40 +00:00
65be1f4daa changed notation from #{} to #() 2018-04-06 14:21:47 +00:00
2242dc9761 changed hcl to be more json friendly including changing various notations and grammars 2018-04-06 08:33:25 +00:00
012d9ef678 enhanced the multiplication function to truncate the resulting fixed-point decimal to the equal precision to the operands 2018-03-30 18:11:11 +00:00
11c464fde4 disallowed fixed point decimal literal with no digit after the point.
fixed a bug in hcl_divnums
2018-03-30 17:37:40 +00:00
7515894082 started adding fpdec calculation functions 2018-03-28 16:40:42 +00:00
4648947ca0 implemented reading and printing of fixed-point decimal number. primitives yet to be written 2018-03-28 08:57:49 +00:00
e4006e6a88 started some code for hcl client 2018-03-18 15:29:16 +00:00
76e3d328e8 enhanced the inclusion path handling in the sample hcl server code
added HCL_SERVER_SCRIPT_INCLUDE_PATH
added optstate field in hcl_server_worker_t
2018-03-17 05:44:40 +00:00
a322f0bc38 changed the hcl_ioimpl_t prototype to return 'int' instead of 'hcl_ooi_t'.
changed the io arguments to have a new 'xlen' field that holds the result of IO operations where 0 means end of stream
2018-03-09 05:05:09 +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
e83dcc0828 changed the notatin of an error literal from #\eNNN to #eNNN.
changed the notation of a smptr literal from #\pXXXX to #pXXXX
2018-03-05 03:47:18 +00:00