Commit Graph

  • 340f1d8a44 wip - making hcl-x code more reusable hyung-hwan 2024-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-hwan 2024-04-18 23:06:28 +09:00
  • 2dad89e2e9 code update for hcl-x hyung-hwan 2024-04-18 13:11:44 +09:00
  • e0083b4453 changed the binop check in the reader code hyung-hwan 2024-04-17 14:33:24 +09:00
  • 9b42b989fa simplified the logic to show the prompt in interactive mode. improved the EOF handling code hyung-hwan 2024-04-17 12:20:25 +09:00
  • 65d64f7c5f enhanced the interactive mode processing a bit hyung-hwan 2024-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-hwan 2024-04-15 13:14:49 +09:00
  • 73e3f189a8 updated feed_char() to reset to the START phase upon an error hyung-hwan 2024-04-15 02:59:59 +09:00
  • 003ebb1b94 wip - more reworking on hcl server/client code hyung-hwan 2024-04-15 02:23:55 +09:00
  • 59dfe8cbb7 wip - reworking hcl server/client code hyung-hwan 2024-04-14 18:33:15 +09:00
  • f9ee45cf41 removed an unused variable from gc.c hyung-hwan 2024-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-hwan 2024-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-hwan 2024-04-13 15:15:27 +09:00
  • 637e8ba3c4 fixed the compiler's check for block expression after if, elif, else, try, catch hyung-hwan 2024-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-hwan 2024-04-10 19:48:49 +09:00
  • 7634df5449 added the str.atPut primitive hyung-hwan 2024-04-10 19:23:15 +09:00
  • 27459c7010 updated hcl_makebigint() hyung-hwan 2024-04-09 00:43:27 +09:00
  • d578ded2c8 update for type correctness hyung-hwan 2024-04-06 16:52:53 +09:00
  • 50bf4a1c0c added hcl_makesymbolwithucstr() hyung-hwan 2024-04-06 16:21:31 +09:00
  • b1d62105a5 wip - fixing bootstrapping issues related to objects and classes hyung-hwan 2024-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-hwan 2024-04-05 01:26:02 +09:00
  • 4be0299de3 some implementation updates to the CLASS_LOAD instruction hyung-hwan 2024-04-04 21:16:28 +09:00
  • da4e895f6f wip - out-of-class method definition hyung-hwan 2024-04-01 01:24:00 +09:00
  • e0ba7c6f12 updated the compiler to treat fun/class as defun/defclass if possible hyung-hwan 2024-03-31 23:14:17 +09:00
  • e7b778e999 updated code for HCL_CODE_CLASS_LOAD hyung-hwan 2024-03-30 18:46:18 +09:00
  • 816b6d54f4 wip - class_load instruction for out-of-class method definition hyung-hwan 2024-03-16 17:00:34 +09:00
  • a0e47d79f9 wip - tiny change to out-of-tree method defintion handling hyung-hwan 2024-03-16 16:36:01 +09:00
  • 9ff7c32262 updated test cases implementing method defintion outside the class definition block hyung-hwan 2024-03-14 23:26:38 +09:00
  • 37e0efc74a separated tuple([] used for assignment) from array(holding data) hyung-hwan 2024-03-10 22:38:01 +09:00
  • f6f4d0f259 enhanced the reader to check lvalue for assignment in advance hyung-hwan 2024-03-10 12:09:56 +09:00
  • 00ad4dd779 added a test case to check a block expression as a conditional expression for if hyung-hwan 2024-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-hwan 2024-03-09 17:10:51 +09:00
  • 081c6d1874 added a double lambda test case hyung-hwan 2024-03-09 14:16: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-hwan 2024-03-09 11:57:02 +09:00
  • 9cd1f90d5d wip - full oop - ignition ok - able to create bootstrapping classes. - able to instantiate objects hyung-hwan 2024-03-08 00:23:52 +09:00
  • 874d0c7962 wip - full oop - added spec and selfspec to the class struct hyung-hwan 2024-03-06 07:51:29 +09:00
  • 7a15fbc3d1 wip - ongoing full OO support effort hyung-hwan 2024-03-03 22:17:14 +09:00
  • ec73905fc4 wip - full oop. broken code hyung-hwan 2024-03-02 19:29:15 +09:00
  • def1e7349c first attempt in implementing full OO hyung-hwan 2024-03-02 14:59:27 +09:00
  • 4afb064530 writing full oop bootstrapping code hyung-hwan 2024-02-26 13:34:09 +09:00
  • 2bd510181c enhanced error handling in some object allocation functions hyung-hwan 2024-02-25 13:55:03 +09:00
  • ba2e5d1ed6 updated the go wrapper code to save one memory allocation hyung-hwan 2024-02-24 22:53:34 +09:00
  • 6b279e1785 some cleanup on go wrapper code hyung-hwan 2024-02-24 19:41:26 +09:00
  • 06176f4900 resolved the issue that go wrapper code stores the file name path in memory allocated with C.malloc hyung-hwan 2024-02-24 17:32:42 +09:00
  • 44a6cda801 wip - fixing file inclusion handling in the go wrapper code hyung-hwan 2024-02-24 12:57:47 +09:00
  • 1a7d86a293 better error handling in the pascal wrapper hyung-hwan 2024-02-23 00:54:36 +09:00
  • 14fbbd1f31 fixed pascal wrapper bug in including a file hyung-hwan 2024-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-hwan 2024-02-22 01:21:11 +09:00
  • c260301db1 some improvement to the hcl command in the interactive mode hyung-hwan 2024-02-20 22:57:30 +09:00
  • b80bea5f73 renamed Interp.Compile to Interp.CompileText hyung-hwan 2024-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-hwan 2024-02-20 15:40:39 +09:00
  • d1deecb5d7 added HCL_LANG_ENABLE_WIDE_DELIMI for experiment hyung-hwan 2024-02-20 08:51:54 +09:00
  • ef3b2bd141 enhanced the byte cci handler code hyung-hwan 2024-02-19 20:48:14 +09:00
  • ca1e82816d almost finished the byte cci handler. yet to test more hyung-hwan 2024-02-18 18:21:24 +09:00
  • 20d8a81a34 wip - working on byte cci handler hyung-hwan 2024-02-18 10:12:56 +09:00
  • ac38c62b0d wip - implementing byte cci handler hyung-hwan 2024-02-17 09:16:44 +09:00
  • dce2b4e040 added lenght check in strerror handling hyung-hwan 2024-02-16 09:32:51 +09:00
  • dc8f0102a8 fixed the strerror_r issue arising for implementation difference hyung-hwan 2024-02-16 08:39:33 +09:00
  • bd8bf36485 touched up some error message hyung-hwan 2024-02-15 00:27:19 +09:00
  • a4d8d8e2a5 WIP - updating pascal wrapper with its own cci handler hyung-hwan 2024-02-13 00:57:30 +09:00
  • f85dd54040 minor code cleanup hyung-hwan 2024-02-11 16:39:16 +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-hwan 2024-02-11 13:41:32 +09:00
  • b86eb13fb1 implemented simple binary operator handling in the reader code hyung-hwan 2024-02-10 12:23:34 +09:00
  • 0455d6cdb3 let the reader check rvalue counts before converting to set or set-r hyung-hwan 2024-02-10 00:31:04 +09:00
  • dd97f3b7f6 adding special handling for binop hyung-hwan 2024-02-09 13:07:37 +09:00
  • 00438200f9 fixed a test case regarding self and super as a return value hyung-hwan 2024-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-hwan 2024-02-05 22:23:38 +09:00
  • 4d5f2266b4 enhanced the test runner for errors to support multiple scripts in a single file hyung-hwan 2024-02-05 02:43:50 +09:00
  • d99a514278 WIP - introducing the BINOP token hyung-hwan 2024-02-04 21:35:31 +09:00
  • 48e6df233b changed ::: to :: to indicate class variables, parent class, retvar hyung-hwan 2024-02-04 01:57:53 +09:00
  • b20d6b14d8 not yet used. but added :< and :> hyung-hwan 2024-02-03 18:59:17 +09:00
  • c2928615a4 shortened ::* to :* hyung-hwan 2024-02-03 18:50:10 +09:00
  • 9aa1bde1a1 changed hcl_geterrnum() to HCL_ERRNUM(). reintroduced hcl_geterrnum() as a function hyung-hwan 2024-02-03 13:36:05 +09:00
  • d339338a40 added some pascal wrapper files hyung-hwan 2024-02-02 14:57:46 +09:00
  • a1f304bdef changing more part of array handling to use #[ hyung-hwan 2024-01-28 00:03:40 +09:00
  • 2e1ae8d9ee WIP - #b[ token for byte array hyung-hwan 2024-01-27 19:10:56 +09:00
  • 632fbfdba2 WIP for #b[ hyung-hwan 2024-01-27 14:26:51 +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-hwan 2024-01-25 23:48:06 +09:00
  • 4d0d50dea9 WIP - handling u and b prefix hyung-hwan 2024-01-24 18:38:33 +09:00
  • b8e0b3578b WIP - implementing b or u prefix for a string or a character literal hyung-hwan 2024-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-hwan 2024-01-23 01:11:13 +09:00
  • 676ba7d746 added GetTrait() and SetTrait() to go code hyung-hwan 2024-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-hwan 2024-01-22 01:27:39 +09:00
  • ca9a6b9eb7 enhanced the main program to show prompt in the interactive mode hyung-hwan 2024-01-21 11:40:40 +09:00
  • e3120e20a2 fixed wrong semicolon handling and enhanced eol/semiclon handling hyung-hwan 2024-01-21 02:23:19 +09:00
  • f88c3a9c1f added a new error case. the case yet to be resolved in implementation hyung-hwan 2024-01-20 10:12:37 +09:00
  • b35ed20c68 updated the reader code to ignore EOL inside vlist hyung-hwan 2024-01-20 01:17:32 +09:00
  • 828bdbb6b7 renamed HCL_TRAIT_LANG_NL_TERMINATOR to HCL_TRAIT_LANG_ENABLE_EOL with bug fixes hyung-hwan 2024-01-19 13:25:23 +09:00
  • f01c499832 added line-break escaping hyung-hwan 2024-01-18 22:55:50 +08:00
  • b3f363c94f experimenting with a new line as a terminator like a semicolon. this breaks some test cases as of now hyung-hwan 2024-01-18 18:16:05 +08:00
  • 656af796ed updated testers with updated syntax hyung-hwan 2024-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-hwan 2024-01-14 09:48:57 +09:00
  • eb6e0484af WIP - multi-variable assigment. experimental convertion from := to set/set-r done hyung-hwan 2024-01-14 01:28:00 +09:00
  • c5606262b9 WIP - multi-vars assignment hyung-hwan 2024-01-13 14:37:59 +09:00
  • f70a087525 enhanced the error handling in lib/read.c hyung-hwan 2024-01-08 00:38:42 +09:00
  • cf0162e140 := experiment hyung-hwan 2024-01-07 10:38:37 +09:00
  • a960af379a added more context-sensitive error messages upon memory allocation failures in comp.c and read.c hyung-hwan 2024-01-06 18:11:39 +09:00
  • 3ea6b92b5f attempt to implement the assignment expression using := hyung-hwan 2024-01-06 13:15:15 +09:00
  • 9bc90c4d60 added HCL_MOD_LIBDIRS hyung-hwan 2024-01-05 15:01:59 +09:00
  • 15a8f142f1 updated .drone.yml to show error logs upon build failure hyung-hwan 2024-01-03 22:47:42 +09:00