Commit Graph

128 Commits

Author SHA1 Message Date
62a071658d more code for message sending 2022-01-31 04:38:05 +00:00
abdfe202ac renamed class_set to class_mstore 2022-01-31 01:36:59 +00:00
db60287e63 adding the class_set instruction 2022-01-29 17:43:11 +00:00
9552c0403a writing message sending implementation code 2022-01-29 09:58:52 +00:00
3c2dd70b8b more code added for message sending implementation 2022-01-25 07:54:11 +00:00
32a1a397d5 some code for message sending 2022-01-24 15:39:49 +00:00
4264bf8413 implementing message sending 2022-01-23 16:46:13 +00:00
53294f53a9 rearranged the stack for the call operation by pushing a dummy receiver.
the rearrangement is done to make aa plain function call look the same as a message send
2022-01-22 15:40:38 +00:00
7ec3aed047 implementing a message sending list 2022-01-14 16:09:52 +00:00
6c9a890f68 writing the compiler code for class variable handling 2022-01-09 16:47:38 +00:00
9369596f83 utf8 range limiting.
compiler work for class variable access in the class defintion scope
2022-01-08 09:26:54 +00:00
adac0b0b75 added new instructions - push_clsvar, store_into_clsvar, pop_into_clsvar 2022-01-01 14:58:57 +00:00
1cf340c8b2 fixed a wrong compiler check in the post_catch() phase 2021-12-26 14:59:34 +00:00
93ea3c46ea fixed process stack handling 2021-12-25 15:33:49 +00:00
3f5100460e enhanced try_exit and try_exit2 to restore the class stack pointer 2021-12-24 14:59:16 +00:00
e0c0e176d8 changed do_throw() to clear the class stack when the exception is empty 2021-12-24 05:10:50 +00:00
f4360afa34 added 'class_push_exit'
enhanced the compiler to produce 'pop_stacktop' at the end of the class if the class body is not empty
2021-12-24 00:05:58 +00:00
b57073b1bb more code to implement class 2021-06-27 17:47:51 +00:00
e74a4efd29 fixed initialization of hcl->nil_process
got rid of HCL_CODE_MAKE_CLASS and merged its feature to HCL_CODE_CLASS_ENTER
2021-06-25 16:07:29 +00:00
2033072791 wrote more code to support classes 2021-06-25 15:19:11 +00:00
8a7ca4dcb1 added the class_enter and class_exit instructions - partially implemented yet 2021-06-19 17:19:24 +00:00
e168ee04de experiment to convert an error from a primitive function to an exception 2021-06-18 07:10:38 +00:00
e946330cbd added some code to handle defclass 2021-05-29 05:44:29 +00:00
d7a8485609 some code for class instantiation 2021-05-21 16:21:23 +00:00
98f47ed295 implementing make_class instructoin 2021-05-21 09:59:35 +00:00
759a090284 added process termination primitives 2021-05-15 11:19:52 +00:00
a104f3ad5b implemented multiple return values assignment with set-r 2021-05-15 05:31:36 +00:00
32405a46eb some more code to support multiple return values via return variables 2021-05-13 14:43:40 +00:00
a67da34260 writing code for return variables support 2021-05-11 15:04:53 +00:00
1486795f15 fixing bugs introduced for block temporaries sheme 2021-05-05 17:37:26 +00:00
2f888200e8 changed the block temporaries scheme 2021-05-05 14:37:01 +00:00
5063c55bb4 trying to support variable arguments and return variables 2021-05-03 15:31:19 +00:00
910d1f1917 fixed a bug in prepare_new_context() and fork handling 2021-05-01 11:26:59 +00:00
5f25a9934a removed two unused variables 2021-04-24 13:53:50 +00:00
2498fa8e4e fixed a bug of not providing the number of temporaries when arraning the initial context 2021-04-23 15:46:35 +00:00
f7416341b6 try-catching working in the top-level now. implemented a way to secure space for top-level temporary variables 2021-04-23 07:17:40 +00:00
07cc5d6eba removed a duplicate line 2021-04-20 14:11:00 +00:00
f72ed9f260 simplified code a bit 2021-04-18 18:02:02 +00:00
1970ffa32a fixing code to implement exception handling 2021-04-14 16:20:18 +00:00
2030410184 working on try-catch implementation 2021-04-11 15:45:01 +00:00
32401bff58 reimplementing try-catch 2021-04-11 15:08:27 +00:00
35f3393bf5 improving function block and control block handling in the compiler code 2021-04-09 08:22:40 +00:00
5dd9e62ad0 added more code to implement simple exception handling 2021-03-02 15:58:13 +00:00
4f35e08f97 added some code for throw 2021-02-28 17:00:28 +00:00
5d426f7646 added the flags field to the context object 2021-02-24 16:57:26 +00:00
61a2c8cd60 added the try_catch instruction 2021-02-22 14:56:27 +00:00
505b4a181b adding hcl_openstd() 2021-02-07 17:57:35 +00:00
a37cd8acb7 added some semaphore handling code 2021-02-05 15:22:39 +00:00
8a3ff5abb1 preparing to implement semaphores 2021-02-03 14:50:51 +00:00
e4f5a310aa fixed some process management code 2021-02-02 23:43:12 +00:00