340f1d8a44
wip - making hcl-x code more reusable
hyung-hwan2024-04-20 12:02:22 +09:00
f9bf37f8bf
fixed the lvalue check in the assignment list in read.c touched up fnblk handling in comp.c updated more code in hcl-x.c
hyung-hwan2024-04-18 23:06:28 +09:00
e0083b4453
changed the binop check in the reader code
hyung-hwan2024-04-17 14:33:24 +09:00
9b42b989fa
simplified the logic to show the prompt in interactive mode. improved the EOF handling code
hyung-hwan2024-04-17 12:20:25 +09:00
65d64f7c5f
enhanced the interactive mode processing a bit
hyung-hwan2024-04-17 02:00:28 +09:00
658e69635a
lib/read.c - updated code to reset some internal data upon an error so that another call to hcl_feed() and variants don't suffer
hyung-hwan2024-04-15 13:14:49 +09:00
73e3f189a8
updated feed_char() to reset to the START phase upon an error
hyung-hwan2024-04-15 02:59:59 +09:00
003ebb1b94
wip - more reworking on hcl server/client code
hyung-hwan2024-04-15 02:23:55 +09:00
f9ee45cf41
removed an unused variable from gc.c
hyung-hwan2024-04-13 17:22:16 +09:00
897042f7f7
simplified the CLASS_LOAD instruction by chaining it with a PUSH instruction. now the class name part of the out-of-class method defintion refers to a normal variable
hyung-hwan2024-04-13 17:17:15 +09:00
7001476e6d
wip - changing class reference implementation in out-of-class method defintion - attempting to allow non-global names as well
hyung-hwan2024-04-13 15:15:27 +09:00
637e8ba3c4
fixed the compiler's check for block expression after if, elif, else, try, catch
hyung-hwan2024-04-13 00:48:23 +09:00
2437fadedf
fixed the compiler to check the presense of the exception handler expression in the catch part
hyung-hwan2024-04-10 19:48:49 +09:00
b1d62105a5
wip - fixing bootstrapping issues related to objects and classes
hyung-hwan2024-04-05 10:00:58 +09:00
b91e48d2a1
added hcl_seterrbfmtloc() and hcl_seterrufmtloc() added the errloc field to hcl_t to capture the exception location
hyung-hwan2024-04-05 01:26:02 +09:00
4be0299de3
some implementation updates to the CLASS_LOAD instruction
hyung-hwan2024-04-04 21:16:28 +09:00
9ff7c32262
updated test cases implementing method defintion outside the class definition block
hyung-hwan2024-03-14 23:26:38 +09:00
37e0efc74a
separated tuple([] used for assignment) from array(holding data)
hyung-hwan2024-03-10 22:38:01 +09:00
f6f4d0f259
enhanced the reader to check lvalue for assignment in advance
hyung-hwan2024-03-10 12:09:56 +09:00
00ad4dd779
added a test case to check a block expression as a conditional expression for if
hyung-hwan2024-03-09 22:48:04 +09:00
8345e2f949
enhanced the binop expression check in leave_list() in read.c fixed the issue of the lost line terminator after the comment text which caused the next line to be treated as the same line
hyung-hwan2024-03-09 17:10:51 +09:00
49ad657544
added an internal macro HCL_LANG_AUTO_FORGE_XLIST_ALWAYS to control the xlist enclosing feature and updated related test cases
hyung-hwan2024-03-09 11:57:02 +09:00
9cd1f90d5d
wip - full oop - ignition ok - able to create bootstrapping classes. - able to instantiate objects
hyung-hwan2024-03-08 00:23:52 +09:00
874d0c7962
wip - full oop - added spec and selfspec to the class struct
hyung-hwan2024-03-06 07:51:29 +09:00
7a15fbc3d1
wip - ongoing full OO support effort
hyung-hwan2024-03-03 22:17:14 +09:00
06176f4900
resolved the issue that go wrapper code stores the file name path in memory allocated with C.malloc
hyung-hwan2024-02-24 17:32:42 +09:00
44a6cda801
wip - fixing file inclusion handling in the go wrapper code
hyung-hwan2024-02-24 12:57:47 +09:00
1a7d86a293
better error handling in the pascal wrapper
hyung-hwan2024-02-23 00:54:36 +09:00
14fbbd1f31
fixed pascal wrapper bug in including a file
hyung-hwan2024-02-23 00:32:17 +09:00
308b39d50b
change to read a line before starting to feed input in the interactive mode fixed the union issue in go wrapper code
hyung-hwan2024-02-22 01:21:11 +09:00
c260301db1
some improvement to the hcl command in the interactive mode
hyung-hwan2024-02-20 22:57:30 +09:00
b80bea5f73
renamed Interp.Compile to Interp.CompileText
hyung-hwan2024-02-20 15:52:28 +09:00
ee152519a8
converted some macros to functions - hcl_getxtn(), hcl_getcmgr(), hcl_setcmgr, hcl_getmmgr() introduced the same macros unsing upper-case naming convention - HCL_XTN(), HCL_MMGR, HCL_CMGR() enhanced the pascal wrapper to load an included file based on the parent path
hyung-hwan2024-02-20 15:40:39 +09:00
d1deecb5d7
added HCL_LANG_ENABLE_WIDE_DELIMI for experiment
hyung-hwan2024-02-20 08:51:54 +09:00
ef3b2bd141
enhanced the byte cci handler code
hyung-hwan2024-02-19 20:48:14 +09:00
ca1e82816d
almost finished the byte cci handler. yet to test more
hyung-hwan2024-02-18 18:21:24 +09:00
20d8a81a34
wip - working on byte cci handler
hyung-hwan2024-02-18 10:12:56 +09:00
ac38c62b0d
wip - implementing byte cci handler
hyung-hwan2024-02-17 09:16:44 +09:00
dce2b4e040
added lenght check in strerror handling
hyung-hwan2024-02-16 09:32:51 +09:00
dc8f0102a8
fixed the strerror_r issue arising for implementation difference
hyung-hwan2024-02-16 08:39:33 +09:00
cac171f4b2
enhanced configure.ac to better support fpc wrapper's linking when findng compiler's builtin libraries such as libgcc or libquadmath
hyung-hwan2024-02-11 13:41:32 +09:00
b86eb13fb1
implemented simple binary operator handling in the reader code
hyung-hwan2024-02-10 12:23:34 +09:00
0455d6cdb3
let the reader check rvalue counts before converting to set or set-r
hyung-hwan2024-02-10 00:31:04 +09:00
dd97f3b7f6
adding special handling for binop
hyung-hwan2024-02-09 13:07:37 +09:00
00438200f9
fixed a test case regarding self and super as a return value
hyung-hwan2024-02-08 01:39:21 +09:00
ded917711e
fixed err.sh to produce the expected line upon failure. updated t/Makefile.am to use $(SHELL) intead of sh
hyung-hwan2024-02-05 22:23:38 +09:00
4d5f2266b4
enhanced the test runner for errors to support multiple scripts in a single file
hyung-hwan2024-02-05 02:43:50 +09:00
d99a514278
WIP - introducing the BINOP token
hyung-hwan2024-02-04 21:35:31 +09:00
48e6df233b
changed ::: to :: to indicate class variables, parent class, retvar
hyung-hwan2024-02-04 01:57:53 +09:00
b20d6b14d8
not yet used. but added :< and :>
hyung-hwan2024-02-03 18:59:17 +09:00
aaa6e35787
enhanced the reader and compiler to treat characters and strings prefixed with b and u as a limited range character and a byte array with internal terminating null at the back
hyung-hwan2024-01-25 23:48:06 +09:00
b8e0b3578b
WIP - implementing b or u prefix for a string or a character literal
hyung-hwan2024-01-24 16:26:30 +09:00
bc7cbd9ed2
renumbers error testers basing on 5000. fixed a compiler bug not checking the lower bound of block depth in find_variable_backward_with_word()
hyung-hwan2024-01-23 01:11:13 +09:00
676ba7d746
added GetTrait() and SetTrait() to go code
hyung-hwan2024-01-22 01:38:13 +09:00
a02c323393
removed the cfg package from go code. instead, started using -ldflags "-X var=val" to set constant values
hyung-hwan2024-01-22 01:27:39 +09:00
ca9a6b9eb7
enhanced the main program to show prompt in the interactive mode
hyung-hwan2024-01-21 11:40:40 +09:00
b3f363c94f
experimenting with a new line as a terminator like a semicolon. this breaks some test cases as of now
hyung-hwan2024-01-18 18:16:05 +08:00
656af796ed
updated testers with updated syntax
hyung-hwan2024-01-15 00:47:01 +09:00
48a54d61c1
updated the reader to forge an outer xlist automatically if the beginning is a complex literal expression like array([]), dictionary(#{}), etc
hyung-hwan2024-01-14 09:48:57 +09:00
eb6e0484af
WIP - multi-variable assigment. experimental convertion from := to set/set-r done
hyung-hwan2024-01-14 01:28:00 +09:00