Commit Graph

33 Commits

Author SHA1 Message Date
8bf134e8e3 refactored compiler code abit 2017-03-08 14:48:12 +00:00
308318b615 changed to accept identifer instead of symbols in pooldic definition 2017-03-08 13:53:41 +00:00
b45d896d9f renamed the #native method modifier to #primitive for consistency
improved the method modifier processing logic in the compiler
2017-02-20 04:45:23 +00:00
6a7cbc8dcb finished the native method handling code in the compiler 2017-02-19 17:33:53 +00:00
8442968f9c fixed a tokenization bug in getting a empty string literal.
allowed a zero-length symbol to be created
2017-02-19 15:45:51 +00:00
93e776a9d8 wrote some incomplete code to support native method definition - method(#native) ... 2017-02-18 15:00:45 +00:00
607e6c8502 experimenting with event driven mechanism 2017-02-18 13:31:47 +00:00
be677dd53a added partial experimental code for io event handling 2017-02-15 11:57:24 +00:00
71aa1110ed added more preamable codes.
enhanced the system to be able to attach trailing spaces to an object upon instantiation, especially for external modules to be able to secure GC-safe free workspace inside an instantiated object
added moo_setclasstrsize(), moo_getobjtrailer() for the trailer feature
2017-02-14 08:29:30 +00:00
4c13989947 enabled the compiler to support a class name as a namespace.
started adding code for event-driven IO handling
2017-02-12 18:59:03 +00:00
b1c28d03d7 changed VM to emulate 'Dictionary new: ..' for MAKE_DICTIONARY
changed VM to emulate 'dic put_assoc: assoc' for POP_INTO_DICTIONARY
2017-02-10 07:38:29 +00:00
0178693f77 added --enable-libltdl to configure 2017-02-09 16:26:44 +00:00
2a40be7742 updated the compiler to fix the jump instruction positions for break and continue upon instruction eliminations 2017-02-09 10:22:44 +00:00
2101bb38b4 renamed __assocPut: to __put_assoc: 2017-02-08 13:14:29 +00:00
a05793a66d rewrote a few methods to use if/while instead of ifTrue:/whileTrue: in Collect.moo 2017-02-07 18:09:07 +00:00
5c07a48c5a wrote code to handle dictionary expression and association expression notation 2017-02-07 17:40:34 +00:00
62eb6db83d in progress of fixing a bug in instruction elimination 2017-02-06 17:53:33 +00:00
60c38a1ecb added make_association, pop_into_association_key, pop_into_association_value byte codes to support assocation expressions 2017-02-05 15:05:25 +00:00
eb83c8d83a started the first step to implement array expression support enclosed in #{ }.
added 2 new byte codes - MAKE_ARRAY, POP_INTO_ARRAY for implementation
2017-02-05 13:54:52 +00:00
54a2128713 fixed -L directory order in lib/Makefile.am to avoid linking to libmoo-xxx shared objects when MOO_ENABLE_STATIC_MODULE is on and $(libdir) contains libmoo-xxx files - place the module build directory in front of other library directories.
fixed problems when MOO_OOCH_IS_BCH
2017-02-03 06:28:12 +00:00
07d8d0ea83 implemented simple optimization in compiling an if expression 2017-01-31 16:14:11 +00:00
22013650bb added the jump_backward_if_true instruction.
added more do-while handling code
2017-01-30 16:48:42 +00:00
341966e373 added a little code for elimination of unneeded code generated 2017-01-29 07:29:58 +00:00
03ddf6b68d added some code to compile the break statement 2017-01-29 07:14:36 +00:00
10ca940d72 added small amount of code to handle break & continue 2017-01-27 15:25:46 +00:00
b7a19a3b14 implemented the while expression handling. break and continue yet to be implemented 2017-01-25 13:57:14 +00:00
6209b13410 added the local return byte code - BCODE_LOCAL_RETURN -> it returns to the origin of the active context 2017-01-22 18:01:26 +00:00
e80b2bc572 enhanced the compiler to store some jump positions in a dynamical data structure when parsing the if expresson 2017-01-20 19:19:28 +00:00
002aa9a3f1 changed the compiler to emit PUSH_NIL when the braced block is empty for if 2017-01-19 17:12:16 +00:00
40ba50fc53 added primitive code to compile the 'if' expression 2017-01-18 17:17:05 +00:00
808586ca00 added the dyncall library detection into configure.ac 2017-01-10 14:27:31 +00:00
2528dcdbe5 changed the compiler to allow assignment to an argument in a method 2017-01-09 13:20:46 +00:00
b2fb361df4 renamed stix to moo 2017-01-09 10:25:22 +00:00