161 Commits

Author SHA1 Message Date
Lyon
0e4d927a5d fix arg_getBool, support REPL echo config 2023-07-11 16:36:28 +08:00
lyon
41cb54ecb0 support bytearray() builtin 2023-05-29 12:09:23 +08:00
pikastech
ad3b22f0f3 fix builtins namespace conflic with module 2023-05-22 09:53:50 +08:00
lyon
8f74b8ea53 add builtins.pyi for PikaStdLib 2023-05-21 22:36:47 +08:00
lyon
b49cb51de3 support isinstance() builtin 2023-05-21 21:05:17 +08:00
lyon
c823ad0879 support isinstance() for simple type 2023-05-21 01:19:13 +08:00
lyon
03e6b89980 support lua table to list/dict 2023-05-14 22:50:24 +08:00
lyon
bb21c7b7fe support method_proxy for pika_lua 2023-05-14 12:57:24 +08:00
pikastech
4e9816f9a1 support max(), min() builtin 2023-05-02 23:54:11 +08:00
pikastech
3d7a087598 add abs() builtin 2023-04-22 18:46:45 +08:00
pikastech
9b140e90a3 add eventloop module, support get_tick for _time 2023-04-20 17:06:16 +08:00
pikastech
a468012f2f fix __setattr__ mem leak when @value is not reg 2023-04-19 22:24:10 +08:00
pikastech
e9f832c517 enhance int() for int('1234', 8) 2023-03-17 14:28:10 +08:00
lyon
7889c4028c (vm) raise err when slice of get out of range 2023-03-11 13:14:54 +08:00
pikastech
1005ca64ef fromat sysobj 2023-03-10 21:39:14 +08:00
pikastech
ca65efd1fa fix args_foreach handler
add PikaGC class

add gc.onMarkObj

add GC DUMP

support gcdump()

improve gcdump
2023-03-09 16:52:57 +08:00
lyon
01be7b7ad7 try to add runbytecodereturn
switch to runbytecodereturn

gc test pass except pikaui

skip pikaui test, local root not work
2023-03-09 11:23:33 +08:00
pikastech
7f5edaf090 add objCnt
ready to check where enable the mark_sweep

auto gc with threshold failed, add some assert

more assert about obj alive, dict mark not correct

add pikaGC_try, but cannot run at any time

markSweep crashed on keyword

save gcRoot for obj to debug

add debug point

add kernal_debug config to keep more debug info

use @res_<opt> to mark operation

found self reference on __iter__()

can not fix gc err around iter

remove lock, only keep the self lock

more obj info for debug

only pikaui not pass

only pikaui not pass
2023-03-08 09:35:27 +08:00
lyon
f152db319c support fullfealure of type() 2023-03-01 22:03:51 +08:00
lyon
cc6fd6605b ready to intruce mark-sweep GC 2023-03-01 21:23:33 +08:00
lyon
ae2ec0a7cd fix 'self' for get method from getattr 2023-03-01 19:28:16 +08:00
pikastech
6258ccebb2 add clear() builtin, fix REPL thread 2023-02-26 17:48:19 +08:00
lyon
85d989028e support bool type 2023-02-18 16:35:03 +08:00
lyon
eb519fb78e fix ac5 warnning 2023-01-29 12:11:43 +08:00
lyon
897a7eba0b fix str() for bytes 2023-01-26 15:58:58 +08:00
lyon
cba8f7ec44 use type(d) == <type> in json.py 2023-01-24 00:20:43 +08:00
lyon
410f0a0093 support type() for list and dict 2023-01-23 23:59:15 +08:00
lyon
065faab243 support str(type()) again 2023-01-23 23:53:40 +08:00
lyon
e50d75addb use arg_toString to get arg<str> 2023-01-23 23:53:40 +08:00
lyon
63cc3434ee ready to merge arg_singlePrint and _print_arg 2023-01-23 23:53:40 +08:00
lyon
68fac66530 fix fn and arg scope, support type() for basic arg 2023-01-23 23:53:40 +08:00
lyon
e2a9489a87 fix tim no found 2023-01-22 23:25:20 +08:00
lyon
d77e7f3f2d add filter for dir() 2023-01-22 23:16:38 +08:00
李昂
59765c4ee2 add reboot() builtin, support save bytecode 2023-01-19 17:44:22 +08:00
lyon
75ce1ba5c8 fix LLD 2022-12-24 15:03:35 +08:00
lyon
9718b1a482 support help('modules') for py modules 2022-11-30 00:39:01 +08:00
lyon
b481c1c72b use pikaList, pikaDict, pikaTuple API 2022-11-19 19:11:34 +08:00
lyon
9d4fe8e98a optimize speed for print() when one input 2022-11-17 12:48:10 +08:00
lyon
1755b51cd9 optimize speed for print() 2022-11-17 12:30:37 +08:00
pikastech
6d61bc07cc support print None
optimizing runbytecode

use _cache_bcf

arrange the run_bytecode and cache

more args for _do_pikaVM_runBytecode

support print(None)
2022-11-14 16:11:21 +08:00
lyon
db95b14950 support float('1.1') 2022-11-08 22:07:23 +08:00
lyon
8c17a7bd0d adding LEFT_RIGHT KEY support, not ok 2022-11-08 12:39:19 +08:00
lyon
5180f2d807 fix cfg.getchar name conflict 2022-10-25 14:32:43 +08:00
lyon
d0df040067 support unittest for REPL, check overflow for REPL 2022-10-25 11:52:42 +08:00
lyon
df65e2def9 support RES on pikaCompiler 2022-10-24 10:14:12 +08:00
lyon
ed060f0c24 use u32 size value inner *.py.o 2022-10-23 18:57:00 +08:00
pikastech
5fa138c9c1 fix input 2022-10-21 17:14:06 +08:00
pikastech
6bb5adde37 support run obj_runChar inner pikaScriptShell 2022-10-20 22:51:51 +08:00
pikastech
83afef1906 fix err when #define __platform_printf to printf 2022-10-19 13:16:50 +08:00
pikastech
713a755459 test ok, rm @p not ok 2022-10-15 19:02:36 +08:00