ValKmjolnir
068743aa4c
📝 change `int` in code to `i32`, optimize code.
2022-07-31 02:19:29 +08:00
ValKmjolnir
7ad1d69c64
⚡ optimize code & chdir will not trigger crash if failed to call
2022-07-30 19:17:33 +08:00
ValKmjolnir
99a131c552
🚀 change `std::string` to `string`, change identifiers' name, `-o` is now a function available in debug mode.
2022-07-23 17:00:25 +08:00
ValKmjolnir
46516485b5
📝 change name of used types
2022-07-23 12:35:21 +08:00
ValKmjolnir
e9fc70bba8
⚡ optimize `op_para` and `op_deft`: change `hashmap<string,u64>` to `hashmap<u32,u32>`
2022-07-23 12:02:41 +08:00
ValKmjolnir
af761641d6
🚀 change `std::cout` to `std::clog` to put some log info
2022-07-21 23:16:16 +08:00
ValKmjolnir
f7cd3a027b
📝 change README.md
2022-07-20 00:06:00 +08:00
ValKmjolnir
cc4ff38f28
⚡ optimize codes
2022-07-19 23:55:12 +08:00
ValKmjolnir
d1a7d32e7b
📝 fix some wanings.
2022-07-11 23:53:23 +08:00
ValKmjolnir
fb25a4973c
⚡ optimize codes. details:
...
1. delete gc::builtin_alloc
2. add convenient way of getting new string object: gc::newstr, and shrink the size of codes
3. update doc
4. add gc::temp to be used in native/module functions to avoid being recognized as garbage incorrectly when triggered mark-sweep
2022-07-07 17:51:30 +08:00
ValKmjolnir
b638708722
📝 change identifiers' name and test/coroutine.nas, test/filesystem.nas
2022-07-06 16:04:21 +08:00
ValKmjolnir
a04ed2a4aa
📝 change makefile and update output format of --opcnt and --detail
2022-07-06 11:57:40 +08:00
ValKmjolnir
82b33ffe4a
📝 change name of some identifiers. shrink size of main stack.
2022-07-05 18:13:54 +08:00
ValKmjolnir
2bc15697df
⚡ optimize codes and delete unused variables
2022-07-05 00:49:38 +08:00
ValKmjolnir
92d68b357c
⚡ optimize vm
2022-07-04 00:16:04 +08:00
ValKmjolnir
452bb4a5d8
📝 change some identifiers' name.
2022-07-03 22:46:28 +08:00
ValKmjolnir
e8bd4664b3
⚡ optimize codes
2022-07-02 18:08:41 +08:00
ValKmjolnir
a2e2d5d8f6
✨ add native function runtime.argv() to get command line arguments
2022-06-04 20:12:00 +08:00
ValKmjolnir
ab37495960
🐛 visual changement & bug fix in test/json.nas & optimize test/bp.nas
2022-05-30 21:27:24 +08:00
ValKmjolnir
190014a3e5
🐛 fix bug that gc cannot mark values in coroutine & add maketimer_sim.nas
...
update props_sim.nas
update auto_crash.nas
2022-05-23 20:23:20 +08:00
ValKmjolnir
ebfacd9197
⚡ optimize codes
2022-05-22 18:19:13 +08:00
ValKmjolnir
07eeaadf96
⚡ optimize codes: store upvalue on stack & debugger now can output information of registers
2022-05-20 21:19:43 +08:00
ValKmjolnir
120ceb429a
🚀 add coroutine library(beta) and lib function settimer&maketimestamp
2022-05-19 20:09:23 +08:00
ValKmjolnir
fd8a148d0c
bytecode info print and debugger will show the front 16 characters of strings whose length is greater than 16
2022-05-02 16:56:03 +08:00
ValKmjolnir
022460755f
optimize codes
2022-04-12 18:26:54 +08:00
ValKmjolnir
4503239731
change STACK_MAX_DEPTH to nasal_gc::stack_depth
2022-04-09 23:14:28 +08:00
ValKmjolnir
617ad03d33
add math.pow
2022-03-27 16:14:55 +08:00
ValKmjolnir
27e25f84ec
update main.cpp and bug fix
2022-03-20 18:28:45 +08:00
ValKmjolnir
c4d52a88cd
update docs & fix bug in nasal_builtin.h
2022-03-16 15:30:34 +08:00
ValKmjolnir
9bcad59e45
change enum obj_type to nasal_obj::obj_type
2022-03-15 22:51:14 +08:00
ValKmjolnir
9a099f66cb
update docs
2022-03-14 20:29:49 +08:00
ValKmjolnir
b79d60fab5
add destructors for obj_file, obj_dylib, obj_dir & bug fix
2022-03-13 00:11:50 +08:00
ValKmjolnir
82e9e97a26
add destructor for obj_file & change arguments in test/tetris.nas
2022-03-12 23:37:16 +08:00
ValKmjolnir
f26719e1d3
visual update
2022-03-10 16:05:49 +08:00
ValKmjolnir
e54ef9620f
change nasal_ref value option functions' output types from pointers to references
2022-03-09 22:54:54 +08:00
ValKmjolnir
61666d275d
delete lstk&fstk, store local address and function on stack and in vm registers
2022-03-08 17:30:40 +08:00
ValKmjolnir
99f595e16f
update num->string algorithm, now the to_string will output strings with no tailing zeros
2022-03-08 13:40:27 +08:00
ValKmjolnir
ca9b8581b4
add module.nas to safely use dylib
2022-03-05 21:52:29 +08:00
ValKmjolnir
40f61a9dd4
fix bug of upval_state
2022-03-02 19:28:17 +08:00
ValKmjolnir
a4738e8c7d
delete operand `op_nop`
2022-02-16 23:27:22 +08:00
ValKmjolnir
5fba784d05
add new gc type vm_upval
2022-02-13 22:40:54 +08:00
ValKmjolnir
e7f503fae1
now local values are stored on stack. upvalue is generated when creating a new function in local scope.
...
may include some bugs inside. but all test files has passed the test so i decide to push it.
2022-02-12 23:12:30 +08:00
ValKmjolnir
980350d70a
prepare for function-call optimization
2022-02-12 18:03:50 +08:00
ValKmjolnir
0ccd3c9bd0
update test/calc.nas & print function of nasal_vec/nasal_hash
2022-02-11 17:04:27 +08:00
ValKmjolnir
3e7ba4d774
little update
2022-02-10 22:20:18 +08:00
ValKmjolnir
a176022840
add notes in lib.nas & add runtime.gc() & add total instruction count in '-o'.
2022-02-09 15:53:09 +08:00
ValKmjolnir
24a1e39ad3
add garbage collector and memory allocator info. use '-d' to activate this function.
2022-02-08 23:40:52 +08:00
ValKmjolnir
2a85e92d4a
optimize test file & little update.
2022-02-06 19:55:45 +08:00
ValKmjolnir
92646840e4
reuse codes in nasal_vec::print and nasal_hash::print
...
now they all use nasal_ref::print
2022-02-05 23:55:56 +08:00
ValKmjolnir
c55ce758ed
change increment arguments to a more efficiency level & change gc.nil, gc.one, gc.zero to constant nil, one, zero
2022-02-04 01:51:30 +08:00