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