Commit Graph

136 Commits

Author SHA1 Message Date
hyunghwan.chung
eea13c0bd2 added Integer>>priorTo:do:by:
changed the index of Integer>>bitAt: and stix_bitatint() to be 0 based.
added Error>>asCharacter
allowed underscores in integer literals
2016-12-28 13:42:12 +00:00
hyunghwan.chung
d03b97f19d added putc to Stdio.
renamed/refactored some encoding conversion functions.
added stix_errnumtoerrstr().
added generr.st to generate error string code
2016-12-27 18:15:35 +00:00
hyunghwan.chung
a9c48b75e6 introduced the Error class to represent an error code as an object.
rewrote STIX_ASSERT() to call stix_logbfmt() via stix_assertfailed()
2016-12-26 18:44:47 +00:00
hyunghwan.chung
125eee9bec fixed a bug in passing a wrong number of arguments to a primitive function handler 2016-12-14 09:40:41 +00:00
hyunghwan.chung
45694df56b finished the initial variadic arguments handling work 2016-12-14 07:18:01 +00:00
hyunghwan.chung
bcaf4e5e1e started using a comma as a parameter/argument separator.
changed to use & as a string concatenation method in the string class.
added some code to support variadic arguments
2016-12-13 15:18:19 +00:00
hyunghwan.chung
0cc0339158 switched _ to . in a primitive method identifier 2016-12-05 15:44:53 +00:00
hyunghwan.chung
b4a513cf40 added more code to stix_genpfmethod(). still incomplete 2016-12-03 18:08:31 +00:00
hyunghwan.chung
7b5fc708f7 changed the compiler to support module loading in class definition 2016-11-29 05:25:08 +00:00
hyunghwan.chung
394a21b8d6 renamed stix_prim_mod_t to stix_mod_t and made relevant changes
added stix_bcstoucs() and stix_ucstobcs()
added stix_setcmgr() and stix_getcmgr()
2016-11-27 15:37:14 +00:00
hyunghwan.chung
e8985e6dc5 fixed the method lookup bug in exec.c 2016-11-21 13:56:20 +00:00
hyunghwan.chung
dab3423f12 interim commit while attempting to primitive calls 2016-11-12 03:02:12 +00:00
hyunghwan.chung
711663255b changed to use STIX_STACK_GETARG() in prim_log() 2016-10-06 17:50:27 +00:00
hyunghwan.chung
1879417d9c touched up vm debugging code 2016-10-06 14:17:24 +00:00
hyunghwan.chung
1960efb7e1 added STIX_EBCFULL, remove unneeded items, changed data type of 'ip' in some functions 2016-10-04 17:58:28 +00:00
hyunghwan.chung
52d3e2528e changed the tokenizer not to read ahead before returning a token 2016-09-23 08:56:25 +00:00
hyunghwan.chung
ab5dee8c77 changed the byte code for push_intlit and push_negintlit.
added a new byte code push_charlit
2016-09-14 04:56:00 +00:00
hyunghwan.chung
00b11b74cd added STIX_STACK_SETRETTORCV() 2016-08-13 06:46:14 +00:00
hyunghwan.chung
41d1bb56a0 added some new macros - STIX_STACK_GETRCV(), STIX_STACK_GETARG(), STIX_STACK_SETRET() 2016-08-10 14:41:45 +00:00
hyunghwan.chung
27f00148a1 added a new reserved word - thisProcess 2016-07-05 15:22:29 +00:00
hyunghwan.chung
a22f5ea0ab enhanced unwind handling upon process termination 2016-07-04 15:36:10 +00:00
hyunghwan.chung
436babff3c enhanced the vm logging interface
attempted to execute ensure blocks on process termination. (wip)
2016-07-01 16:31:47 +00:00
hyunghwan.chung
1445d0deb0 added some logging methods to SystemDictioanry
added Resource handling functions for use by primitive modules
2016-06-30 13:44:37 +00:00
hyunghwan.chung
de965baab7 refactored exception handling code a little 2016-06-26 15:03:12 +00:00
hyunghwan.chung
d512088860 improved timer management to work on platforms where stix_smooi_t is not large enough 2016-06-24 15:53:00 +00:00
hyunghwan.chung
102fa8abf4 removed more unused code 2016-06-24 15:01:51 +00:00
hyunghwan.chung
6a32e4278c removed unneeded code and reimplemented Exception>>retry,resume,return 2016-06-24 14:29:43 +00:00
hyunghwan.chung
544ee2b4ae added more exception handling and ensure implementation code 2016-06-23 15:35:28 +00:00
hyunghwan.chung
73885dc552 removed the ensure_block field from the context object and added the <ensure> code to the preamble field of a method. 2016-06-22 03:23:14 +00:00
hyunghwan.chung
8b678c21fb added some code for unwind protection 2016-06-20 15:42:51 +00:00
hyunghwan.chung
67275b3ef3 started correcting ensure: implementation 2016-06-18 00:12:27 +00:00
hyunghwan.chung
f22b896ed2 fixed the bug not popping an argument in the _integer_inttostr primitive.
added a new primitive _processor_return_to_and_eval to support proper exception handling
2016-06-13 15:52:09 +00:00
hyunghwan.chung
1ab2faaf1f switched more printf() statements to STIX_LOGX() 2016-06-05 18:37:28 +00:00
hyunghwan.chung
512df8876b switched many hardcoded printf() statements to STIX_LOGX() 2016-06-05 18:01:35 +00:00
hyunghwan.chung
eeb2fdebbd improved log message handling 2016-06-03 15:46:01 +00:00
hyunghwan.chung
0c4ce4eb04 added stix_bfmtout() and stix_oofmtout() 2016-06-01 15:33:03 +00:00
hyunghwan.chung
037bbff42c started adding byte-code decoder 2016-05-27 15:01:54 +00:00
hyunghwan.chung
7ccd2dad86 added incomplete os2 support code 2016-05-19 13:06:05 +00:00
hyunghwan.chung
c39aa957ad added some support routines for classic mac os 2016-05-19 03:49:23 +00:00
hyunghwan.chung
04ccebe9b4 renamed Collection.st to Collect.st 2016-05-18 14:53:20 +00:00
hyunghwan.chung
38ccdbed9d fixed the stack growth issue when manipulating the instruction pointer by intruducing a new primitive method MethodContext>>goto: 2016-05-18 11:10:54 +00:00
hyunghwan.chung
717ffcbdd9 some more work on process switching and exception handling 2016-05-17 15:12:27 +00:00
hyunghwan.chung
19735bac69 fixed a problem in breaking out of an initial context 2016-05-15 15:51:41 +00:00
hyunghwan.chung
801b6d92d4 fixed some minor build flaws 2016-05-13 15:10:34 +00:00
hyunghwan.chung
36a54fd29f refreshed whileTrue: and whileFalse: 2016-05-12 05:53:35 +00:00
hyunghwan.chung
4bbd5b52bb removed unneeded text 2016-05-07 01:37:44 +00:00
hyunghwan.chung
f9ad51b5c5 added a name field to a complied method class.
wrote more code for implementing exception handling
2016-05-03 10:10:28 +00:00
hyunghwan.chung
389203b6e4 reset the sender field to stix->_nil when creating a new process over a block context .
touched up exception handling implementation code
2016-05-02 13:50:42 +00:00
hyunghwan.chung
90eb7d5507 added more code for exception handling 2016-05-01 13:49:36 +00:00
hyunghwan.chung
8ea80dae91 fixed a build issue with an old compiler 2016-04-30 15:48:08 +00:00