Commit Graph

115 Commits

Author SHA1 Message Date
hyunghwan.chung
2bf8b591cf changed to handle the error literal in the compiler.
added stix_synerrnumtoerrstr().
2016-12-28 19:12:14 +00:00
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
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
f88027af32 added two experimental language/compiler enhancements - 1. multi-line comments enclosed in (* and *) 2. unary method and message with parenthensized parameters 2016-12-06 17:21:47 +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
e8985e6dc5 fixed the method lookup bug in exec.c 2016-11-21 13:56:20 +00:00
hyunghwan.chung
eaa9dbc958 experimental code for better module handling 2016-11-18 18:11:13 +00:00
hyunghwan.chung
bb45bdc480 implemented karatsuba multiplication.
added stix_lidi_t and stix_lii_t
2016-11-09 15:50:18 +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
646a5e45a7 fixed the definition of STIX_SETBITS() 2016-10-01 01:56:14 +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
2ea673dc23 fixed some comments 2016-09-23 00:13:02 +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
2b97473c5e removed the unneeded code 2016-09-07 07:51:04 +00:00
hyunghwan.chung
155babff74 enhanced line end handling 2016-09-06 16:06:22 +00:00
hyunghwan.chung
d704ce5975 refactored compiler code with some macros 2016-08-29 07:39:09 +00:00
hyunghwan.chung
64395d8815 fixed a compiler to handle imported pool dictionaries properly when extending a class 2016-08-29 06:10:02 +00:00
hyunghwan.chung
27f00148a1 added a new reserved word - thisProcess 2016-07-05 15:22:29 +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
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
512df8876b switched many hardcoded printf() statements to STIX_LOGX() 2016-06-05 18:01:35 +00:00
hyunghwan.chung
f43240ca4d improved log message handling more 2016-06-03 16:16:23 +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
19735bac69 fixed a problem in breaking out of an initial context 2016-05-15 15:51:41 +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
77f0bfad5d added some more code to support exception handling 2016-03-28 13:25:36 +00:00
hyunghwan.chung
f32e58f4b3 fixed a compiler bug that omitted the RETURN_FROM_BLOCK instruction when an empty block is encountered.
added more code for supporting the process stack
2016-02-12 16:23:26 +00:00
hyunghwan.chung
3d937334d8 touched up code a bit 2016-02-11 14:26:26 +00:00
hyunghwan.chung
ce9db0e40d added aclocal.m4 2016-01-29 04:04:39 +00:00
hyunghwan.chung
fff2af4762 fixed a parameter range check bug in a compiler.
fixed a wrong goto label location for send_message
2015-12-27 10:19:36 +00:00
hyunghwan.chung
e7d00d89bf implement right bit shift over a small integer 2015-12-22 15:50:01 +00:00
hyunghwan.chung
08cfa55acc rewrote stix_bitandints(), stix_bitorints(), stix_bitxorints() to handle negative numbers in the 2's complement form 2015-12-17 16:11:10 +00:00
hyunghwan.chung
f1ff341da2 added configuration files for dos 2015-12-03 15:11:47 +00:00
hyunghwan.chung
6544340db4 fixed a bug of wrong short number conversion in stix_strtoint() when STIX_LIW_BITS == STIX_OOHW_BITS 2015-12-02 16:14:37 +00:00
hyunghwan.chung
f618154aaf changed STIX_SMOOI_MIN to -STIX_SMOOI_MAX instead of (-STIX_SMOOI_MAX - 1)
fixed tally range check bugs in dic.c/sym.c/gc.c
simplificed some code resulting from STIX_SMOOI_MIN change.
2015-11-20 09:05:55 +00:00
hyunghwan.chung
5cebf7e8dc changed atom_t to stix_liw_t and made related changes.
introduced #liword to the compiler
2015-11-17 14:13:59 +00:00
hyunghwan.chung
b0f8561238 added more code for bigint.
changed SMINT to SMOOI and renamed relevant macros accordingly
2015-11-12 06:57:35 +00:00
hyunghwan.chung
1094d298cb added some bigint related code 2015-10-29 15:24:46 +00:00
hyunghwan.chung
98631175d0 redefined some types 2015-10-28 14:58:58 +00:00
hyunghwan.chung
6916198253 touched up code 2015-10-14 13:25:36 +00:00