paladin-t
111ab4a9bc
*fixed a bug with nested if statement; *fixed an indexing bug with list; +added a new sample script source file.
2016-01-25 16:50:28 +08:00
paladin-t
d7424ec5f6
*polished code.
2016-01-25 11:37:56 +08:00
paladin-t
cb9350f1c2
*fixed a memory leak when printing a referenced usertype.
2016-01-25 11:16:01 +08:00
Wang Renxin
296fda75f7
+added lazy evaluation for ranged list.
2016-01-23 17:22:16 +08:00
paladin-t
d344b05d68
+added an IN keyword; +added support to loop on collections by using FOR-IN statement.
2016-01-22 19:26:36 +08:00
paladin-t
c684f3fcef
*refactored FOR statement.
2016-01-22 17:25:07 +08:00
paladin-t
5fe522bb47
+added a HASH meta method; +added a COMPARE meta method.
2016-01-22 12:57:22 +08:00
paladin-t
e73dee7008
*fixed a referenced usertype comparison bug.
2016-01-21 20:34:38 +08:00
paladin-t
d9d793f08a
+added "HASH" and "COMPARE" string constants.
2016-01-21 13:26:41 +08:00
paladin-t
9c35b84843
*fixed a wrong memory copy bug with the PRINT statement; +added TOSTRING meta method to serialize a class instance.
2016-01-21 13:17:53 +08:00
paladin-t
c7dda61248
*improved type handling.
2016-01-21 11:11:17 +08:00
paladin-t
98631c35ac
*fixed an unknown type handling bug.
2016-01-20 21:32:09 +08:00
paladin-t
00e734bef2
*polished code.
2016-01-19 15:35:37 +08:00
paladin-t
d157f37ce5
*refactored struct _routine_t to make sure the _ref_t struct is in front of any referenced struct block.
...
*refactored struct _routine_t to make sure the _ref_t struct is in front
of any referenced struct block, thus &_ref_t == &(referenced struct).
2016-01-19 13:24:35 +08:00
paladin-t
40e79143b1
+added support to apply the LEN statement to variable arguments as LEN(...).
2016-01-19 13:06:53 +08:00
paladin-t
69d26f6006
*fixed an infinity loop bug with variable arguments handling; *fixed a memory leak with error routine.
2016-01-18 15:51:09 +08:00
paladin-t
4792ac7a93
+added variable arguments support.
2016-01-18 15:21:07 +08:00
paladin-t
f605013833
*polished shell implementation code.
2016-01-18 10:49:28 +08:00
Wang Renxin
d290aeb20e
+added source file information to error handling; *fixed a memory leak.
2016-01-17 15:33:10 +08:00
Wang Renxin
7f81719ba1
*polished code. -removed an assertion.
2016-01-17 12:12:51 +08:00
Wang Renxin
74f6f054b4
+added a range of integer syntax.
...
+Added a range of integer syntax for the LIST statement, eg. LIST(m TO
n).
2016-01-16 14:01:02 +08:00
paladin-t
acf5238d44
+added a REFLECT statement.
2016-01-15 19:53:11 +08:00
paladin-t
cc93e2ab7c
+added MB_ENABLE_USERTYPE_REF and MB_ENABLE_ARRAY_REF macros. *updated doc.
2016-01-15 15:39:23 +08:00
paladin-t
86e79c059d
*fixed an invalid gc table iteration bug.
2016-01-15 12:49:02 +08:00
paladin-t
8e3a9ab748
*fixed some crash bugs with invalid syntax; *fixed some memory leak with invalid syntax.
2016-01-15 10:53:45 +08:00
Wang Renxin
baec8134eb
*fixed a variable assignment bug when it was holding a routine; *updated osx binary.
2016-01-14 20:59:53 +08:00
paladin-t
4c9ae52049
*fixed a compile issue.
2016-01-14 19:11:06 +08:00
paladin-t
876a50460d
*fixed a lambda evaluation bug with upvalues from meta class.
2016-01-14 19:09:21 +08:00
paladin-t
a8cc657fe9
*fixed a compile issue.
2016-01-14 17:51:49 +08:00
paladin-t
a8149f6eb4
*fixed a missing assignment bug with class field accessor; *polished code.
2016-01-14 17:48:58 +08:00
paladin-t
288990d733
*bugfix.
...
*fixed a collection accessing bug in an assignment statement; *fixed a
routine disposing issue; -removed support of storing a literal instance
in a variable.
2016-01-14 17:01:39 +08:00
paladin-t
d1999537fe
*fixed a lambda unreferencing issue; *fixed an issue with lambda when a class instance went out of use; *simplified variable creation.
2016-01-14 14:57:56 +08:00
paladin-t
4977143b91
*optimized hash table algorithm.
2016-01-13 10:56:08 +08:00
paladin-t
686be8e61a
*optimized memory occupation with lambda.
2016-01-12 19:28:41 +08:00
paladin-t
82ddc8c029
*fixed a wrong disposing bug when accessing a collection by brackets.
2016-01-12 18:50:32 +08:00
paladin-t
c8d18f2dda
*improved sub routine by unreference objects which were out of scope.
2016-01-12 17:01:13 +08:00
paladin-t
9e790bce1e
*fixed bugs with lambda; *fixed a multiple disposing bug with string expression; *fixed some other bugs with lambda.
2016-01-12 15:21:40 +08:00
paladin-t
f4ce66dedf
*fixed a routine evaluation bug when it's stored in a variable.
2016-01-12 13:08:37 +08:00
Wang Renxin
64a888db98
*fixed a memory leak with string manipulation.
2016-01-11 14:34:15 +08:00
Wang Renxin
d692211deb
*fixed a crash bug when a do-until statement is the end of a program.
2016-01-11 11:54:31 +08:00
Wang Renxin
6e93e64c31
*avoided warnings; *updated win binary.
2016-01-09 15:07:45 +08:00
Wang Renxin
5338eb47f3
*developing lambda, improved error handling.
2016-01-09 14:29:51 +08:00
Wang Renxin
71ab22d995
*developing lambda, fixed an issue with only a PRINT statement.
2016-01-09 14:09:46 +08:00
paladin-t
ef969dd8c2
*developing lambda, fixed an upvalue passing issue.
2016-01-08 12:12:31 +08:00
paladin-t
d8d1b13ef2
*developing lambda, fixed a lambda scope linkage issue.
2016-01-08 11:26:48 +08:00
paladin-t
8da65bf5cf
*fixed a wrong scope linkage issue with lambda.
2016-01-07 21:31:05 +08:00
paladin-t
9ebaeffa5d
*developing lambda, added support for return from a lambda without a return statement.
2016-01-07 20:53:39 +08:00
paladin-t
6033366ec1
+developing lambda, added lambda evaluation.
2016-01-07 20:13:37 +08:00
paladin-t
552c975401
*developing lambda.
2016-01-07 19:23:45 +08:00
paladin-t
ca9dd84eee
+developing lambda, added parameter and upvalue processing; added closure maintenance; added lambda unreferencing functions.
2016-01-07 18:51:01 +08:00