183 Commits

Author SHA1 Message Date
Wang Renxin
12fef457d3 +added referenced usertype support. 2015-10-15 11:53:35 +08:00
Wang Renxin
57555f8bd4 +ignored array for gc. 2015-10-14 11:44:08 +08:00
Wang Renxin
245c68bb39 +added garbage collection for referenced objects. 2015-10-14 11:36:55 +08:00
Wang Renxin
9c9bb57d33 *fixed a memory leak. 2015-10-13 17:10:04 +08:00
Wang Renxin
716526047d *polished code. 2015-10-13 14:19:23 +08:00
Wang Renxin
a7ba186b6c *changed array to referenced type. 2015-10-13 14:10:57 +08:00
Wang Renxin
7b71bee735 *improved memory pool. 2015-10-12 20:08:24 +08:00
Wang Renxin
1ee5485820 *avoided cycle importing. 2015-10-12 18:46:40 +08:00
Wang Renxin
fca2da3730 *avoid warnings. 2015-10-12 09:57:05 +08:00
tony
a0aee0f46a +added a CLONE statement/function for collections. 2015-10-11 17:41:47 +08:00
tony
1f56b39a4f *optimized LIST indexing; *optimized LIST counting. 2015-10-11 16:01:10 +08:00
tony
598e802ae7 *improved stability for nested IF statement. 2015-10-10 23:51:56 +08:00
Wang Renxin
9f2680e55b *avoid crash. 2015-10-10 20:23:36 +08:00
Wang Renxin
f47077b08d *improved stability, refused nested array inside other collections, and vice versa. 2015-10-08 21:23:57 +08:00
Wang Renxin
22d3d3224b *fixed an iterator validation bug; *fixed an iterator assignment issue. 2015-10-08 20:37:17 +08:00
tony
5f8c901094 *improved printing collection info. 2015-10-07 14:38:47 +08:00
tony
55968967ec +added non number data comparison; *improved collection stability; +accepted dictionary iterator for VAL statement. 2015-10-07 13:11:57 +08:00
tony
f4ea9dce90 *fixed a wrong evaluation bug in nested IF statements, thanks to Julien Krief for pointing it out. 2015-10-05 20:48:03 +08:00
tony
fffb567dd8 +added LIST, DICT; +added TYPE; +added mb_get_type_string. 2015-10-05 17:22:00 +08:00
Wang Renxin
f6814ac00f *improved UTF8 string manipulation. 2015-09-30 10:43:08 +08:00
Wang Renxin
e8a1f62c64 +added UTF8 support for string manipulation. 2015-09-29 13:04:01 +08:00
Wang Renxin
58c7483ce2 *fixed a compatibility bug with scope meta info; *improved compatibility with TCC. 2015-09-28 10:57:26 +08:00
Wang Renxin
9651ba9b6c *polished my_basic.c. 2015-09-25 14:27:47 +08:00
Wang Renxin
5b72de8e6f *tidy useless variables. 2015-09-24 19:35:27 +08:00
Wang Renxin
ab465ca7ca *fixed bugs in a recursive sub routine, thanks to John for pointing it out; *fixed identifier lookup bugs; *fixed a memory leak when pushing string arguments. 2015-09-24 13:25:27 +08:00
Wang Renxin
5bf75a513e *updated my_basic.c. 2015-09-23 11:50:12 +08:00
Wang Renxin
9908cd9ce9 *avoid warnings. 2015-09-23 11:44:40 +08:00
Wang Renxin
cfbdc82ce9 +added IMPORT statement. 2015-09-22 13:55:53 +08:00
Wang Renxin
ca07414c24 *updated my_basic.c 2015-09-22 12:52:13 +08:00
Wang Renxin
c609687f2b +added mb_get_var, mb_get_var_value and mb_set_var_value implementation. 2015-09-22 11:07:11 +08:00
tony
b6ab676ad7 +implemented tail recursion optimization in sub routine; +added array length gain in len function; *fixed a crash bug when returning nothing in a sub routine; *polished document. 2015-09-21 23:51:55 +08:00
Wang Renxin
ed49a25074 +added array length gain in LEN function. 2015-09-21 14:11:57 +08:00
tony
faae9b4cdc +added array manipulation ability to script, it's able to assign an array to a variable or use it as a scripting interface argument; +added recursive sub routine support; *fixed a wrong argument detection bug in mb_has_arg. 2015-09-20 21:34:04 +08:00
tony
09f005b50a *fixed a float number parsing bug, thanks to Cybermonkey342 for pointing it out; +added directly expression evaluation shell command. 2015-09-18 21:06:38 +08:00
Wang Renxin
db122e960e *fixed a float number parsing bug. 2015-09-18 10:04:47 +08:00
Wang Renxin
d21c797b3f *fixed a repeated releasing bug when using sub routine. 2015-09-17 18:19:58 +08:00
Wang Renxin
7f8a18c9b0 *supports sub routine in PRINT. 2015-09-17 15:52:09 +08:00
Wang Renxin
987d0a2a81 *allowed strings in a boolean expression. 2015-09-17 14:02:00 +08:00
tony
31ab04052a +added Nil type handling, including assignment, boolean operation, serialization, etc. +added an MB_CONVERT_TO_INT_LEVEL macro, would convert float to integer as much as possible if this macro was enabled; *polished document 2015-09-16 21:25:01 +08:00
tony
c6d7dcae8f +added a duplicate sub routine error handling; +added optional argument support for INPUT statement; *fixed a variable multiple freeing bug in sub routine; *polished document. 2015-09-11 22:29:16 +08:00
Wang Renxin
583cc5ae53 *fixed a sub routine invoking bug without leading CALL statement or result receiver. 2015-09-08 13:37:44 +08:00
Wang Renxin
da3ad153b1 *fixed a type parsing of sub routine bug; *fixed a scope processing bug. 2015-09-08 13:26:54 +08:00
tony
fe3e7db9c9 *improved sub routine. 2015-09-07 09:41:15 +08:00
tony
789cc76eb3 +added sub routine type insurance; *prompted more friendly dummy function message; *polished code and document 2015-09-02 21:29:29 +08:00
tony
1c1771280c +added support for user customized routine by DEF/ENDDEF 2015-09-01 22:22:15 +08:00
tony
0b7d939fe1 +added a memory pool to interpreter shell in main.c. 2015-08-26 21:21:19 +08:00
tony
78fe066a29 +allowed a user to define the memory tag data type, unsigned short as default; +added an mb_set_memory_manager function, allows user defined memory management; +added referencable data type size constants. 2015-08-25 21:42:15 +08:00
tony
802b5aa1f1 +added data structure for routine and prototype. 2015-08-17 15:06:53 +08:00
tony
8b0e99c755 fixed a wrong IF trunk processing bug, thanks to irony for pointing it out; fixed a crash bug with an invalid IF statement. 2015-08-11 13:27:17 +08:00
Wang Renxin
610cd04731 *fixed a memory leak with mb_pop_xxx 2015-07-27 13:06:05 +08:00