Commit Graph

1143 Commits

Author SHA1 Message Date
hyunghwan.chung
0178693f77 added --enable-libltdl to configure 2017-02-09 16:26:44 +00:00
hyunghwan.chung
c613b6955d fixed a segfault bug when the source file cannot be opened 2017-02-09 15:56:51 +00:00
hyunghwan.chung
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
hyunghwan.chung
c6cf64a586 fixed some issues in logfmt routines.
changed the dl_getsym callback to  use the dynamic memory allocation if the static buffer isn't large enough
2017-02-09 08:05:14 +00:00
hyunghwan.chung
2101bb38b4 renamed __assocPut: to __put_assoc: 2017-02-08 13:14:29 +00:00
hyunghwan.chung
a05793a66d rewrote a few methods to use if/while instead of ifTrue:/whileTrue: in Collect.moo 2017-02-07 18:09:07 +00:00
hyunghwan.chung
5c07a48c5a wrote code to handle dictionary expression and association expression notation 2017-02-07 17:40:34 +00:00
hyunghwan.chung
62eb6db83d in progress of fixing a bug in instruction elimination 2017-02-06 17:53:33 +00:00
hyunghwan.chung
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
hyunghwan.chung
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
hyunghwan.chung
98b6dd1118 enhanced the dynamic library loader a bit 2017-02-04 05:30:15 +00:00
hyunghwan.chung
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
hyunghwan.chung
ea6d48eb0e improved the #include handling to remember the file loaded and use it when loading an includee file 2017-02-02 12:45:15 +00:00
hyunghwan.chung
5c755d68f5 rewrote whileTrue:, whileFalse:, and similar methods for BlockContext in an imperative style 2017-02-02 04:46:29 +00:00
hyunghwan.chung
07d8d0ea83 implemented simple optimization in compiling an if expression 2017-01-31 16:14:11 +00:00
hyunghwan.chung
22013650bb added the jump_backward_if_true instruction.
added more do-while handling code
2017-01-30 16:48:42 +00:00
hyunghwan.chung
341966e373 added a little code for elimination of unneeded code generated 2017-01-29 07:29:58 +00:00
hyunghwan.chung
03ddf6b68d added some code to compile the break statement 2017-01-29 07:14:36 +00:00
hyunghwan.chung
10ca940d72 added small amount of code to handle break & continue 2017-01-27 15:25:46 +00:00
hyunghwan.chung
b7a19a3b14 implemented the while expression handling. break and continue yet to be implemented 2017-01-25 13:57:14 +00:00
hyunghwan.chung
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
hyunghwan.chung
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
hyunghwan.chung
5c6a5f4baf deleted unneeded files 2017-01-19 17:33:27 +00:00
hyunghwan.chung
4a0cefacc3 added a new libltdl m4 file 2017-01-19 17:29:03 +00:00
hyunghwan.chung
c19674ce13 added/deleted new/unneeded files 2017-01-19 17:18:30 +00:00
hyunghwan.chung
002aa9a3f1 changed the compiler to emit PUSH_NIL when the braced block is empty for if 2017-01-19 17:12:16 +00:00
hyunghwan.chung
40ba50fc53 added primitive code to compile the 'if' expression 2017-01-18 17:17:05 +00:00
hyunghwan.chung
4a4d40dea1 enclosed a dyncall related line inside USE_DYNCALL 2017-01-16 14:46:07 +00:00
hyunghwan.chung
bc83b95acb added some argument checks into ffi
added more string manipulation functiions
2017-01-16 14:42:39 +00:00
hyunghwan.chung
70f9976af3 added moo_duputobcharswithheadroom(), moo_dupbtoucharswithheadroom()
added moo_inttoooi() and made public moo_inttooow()
enhanced the ffi module a bit more
2017-01-15 17:53:37 +00:00
hyunghwan.chung
79198df35b added MOO_OBJ_GET_XXX_SLOT() macros 2017-01-12 17:48:04 +00:00
hyunghwan.chung
750f529201 added more string duplication and conversion functions 2017-01-12 16:33:26 +00:00
hyunghwan.chung
ec3285da57 added more character conversion functions 2017-01-12 10:06:43 +00:00
hyunghwan.chung
d130ec02ec added more code to ffi 2017-01-11 15:33:03 +00:00
hyunghwan.chung
f23486468d removed unnecesary code from the ffi module 2017-01-10 14:34:54 +00:00
hyunghwan.chung
808586ca00 added the dyncall library detection into configure.ac 2017-01-10 14:27:31 +00:00
hyunghwan.chung
1612143499 added MOO_IN_SMPTR_RANGE(), MOO_SMPTR_TO_OOP(), MOO_OOP_TO_SMPTR().
refactored ffi a bit more
2017-01-10 13:56:19 +00:00
hyunghwan.chung
faf6ca28e5 added MOO_VMPRIM_OPENDL_PFMOD.
started refactoring ffi handling code
2017-01-10 10:50:26 +00:00
hyunghwan.chung
95885e4dec fixed some wrong code 2017-01-09 14:52:15 +00:00
hyunghwan.chung
cd79383202 simple error handling in write handler 2017-01-09 13:48:33 +00:00
hyunghwan.chung
65f2f862f8 started taking ffi out of the main vm, putting it to a separate module 2017-01-09 13:41:11 +00:00
hyunghwan.chung
2528dcdbe5 changed the compiler to allow assignment to an argument in a method 2017-01-09 13:20:46 +00:00
hyunghwan.chung
7460ce819c renamed *.st files to *.moo 2017-01-09 12:52:37 +00:00
hyunghwan.chung
68a455e128 fixed some build file issues 2017-01-09 12:16:51 +00:00
hyunghwan.chung
b2fb361df4 renamed stix to moo 2017-01-09 10:25:22 +00:00
hyunghwan.chung
f7e98b7fc7 renamed stix to moo 2017-01-09 09:54:49 +00:00
hyunghwan.chung
064d02d031 added stix_deletedic() and Dictionary>>removeKey: and its derivatives 2017-01-09 09:11:36 +00:00
hyunghwan.chung
6e335cd4fb added more methods to Dictionary.
made a simple optimization in dic.c
2017-01-06 14:49:42 +00:00
hyunghwan.chung
23d80e77aa added Magnitu.st 2017-01-06 13:30:02 +00:00
hyunghwan.chung
e12245e398 added an equality check primitive function 2017-01-06 13:27:49 +00:00