Commit Graph

147 Commits

Author SHA1 Message Date
ValKmjolnir 7eab2c8a66 🐛 fix codegen skip or/and expr bug 2023-05-08 19:23:50 +08:00
ValKmjolnir cbb3906536 add cmakelists.txt 2023-05-06 21:12:40 +08:00
ValKmjolnir a17e6d920a 🎨 improve code style 2023-04-12 01:11:31 +08:00
ValKmjolnir 6410cfada2 split opcode to nasal_opcode.h 2023-04-04 00:29:17 +08:00
ValKmjolnir ab5462f556 visual update 2023-03-11 18:15:27 +08:00
ValKmjolnir 1039d7d7ba add new operand calculate const and pop 2023-03-10 22:27:06 +08:00
ValKmjolnir c6becf864d optimize codegen 2023-03-09 23:00:25 +08:00
ValKmjolnir dd804ee9f9 update error report for parser&codegen 2023-03-08 23:53:02 +08:00
ValKmjolnir 053dbf24b4 add multi-line error report and span 2023-03-08 01:12:01 +08:00
ValKmjolnir 034085e6cb 🚀 add operator ^= &= |=
fix bug of parsing expressions beginning with floater
2023-02-28 00:30:27 +08:00
ValKmjolnir a06b17546e 🚀 add bitwise operators or, xor, and 2023-02-16 00:24:32 +08:00
ValKmjolnir 43371d5b4c 🐛 fix codegen for binary not on some ast nodes 2023-02-12 15:33:38 +08:00
ValKmjolnir 8c02aa0fff 🚀 add binary negation 2023-02-12 15:22:05 +08:00
ValKmjolnir e2e6a64bc7 🐛 fix bug in test/calc.nas 2023-02-03 19:01:00 +08:00
ValKmjolnir 21a8579d8f add keyword support 'true' and 'false'
true is now number 1.0

false is number 0.0
2023-01-16 17:44:56 +08:00
ValKmjolnir b28e85a7a1 little optimization 2022-11-30 01:11:26 +08:00
ValKmjolnir 34e29e398a 🎨 change code format 2022-11-26 22:49:22 +08:00
ValKmjolnir 7c075a6071 move lvalue check from parse to codegen 2022-11-20 17:06:13 +08:00
ValKmjolnir 58b10b99a7 🎨 improve error report 2022-11-19 22:47:19 +08:00
ValKmjolnir be42d47c93 🐛 fix ast print bug & delete some macros 2022-10-30 18:40:03 +08:00
ValKmjolnir d3fd8ce336 🎨 improve code format
delete option -v, --version, -l, --lex
2022-10-30 01:26:26 +08:00
ValKmjolnir b5828137f2 🎨 improve format of code 2022-10-28 23:28:15 +08:00
ValKmjolnir 1a0f81214f 🔥 change class name.
nasal_lexer -> lexer
nasal_parse -> parse
nasal_codegen -> codegen
nasal_vm -> vm
nasal_gc -> gc
nasal_dbg -> debugger
nasal_import -> linker
nas_ref -> var
2022-10-21 01:29:29 +08:00
ValKmjolnir ac26105231 🚀 add stl/csv.nas & ast name change 2022-10-19 00:54:21 +08:00
ValKmjolnir eec7c2caf1 🚀 delete unnecessary codes & add stl/string.nas 2022-10-05 16:03:47 +08:00
ValKmjolnir f9b8957385 🚀 move pic directory into doc 2022-09-19 00:10:08 +08:00
ValKmjolnir 4bdfa9cb61 🚀 import information output of dbg, vm and codegen 2022-09-11 17:22:00 +08:00
ValKmjolnir 0f59028c82 improve error output info generated by codegen. 2022-09-05 00:41:36 +08:00
ValKmjolnir 8d0eadaa74 📝 fix MSVC warning in nasal_builtin.h & improve error output. 2022-09-04 23:08:06 +08:00
ValKmjolnir f70ce082fd 🎨 improve error log output format. 2022-09-02 02:04:03 +08:00
ValKmjolnir 6318f7e9e8 optimize header file, now modules could generate smaller dynamic libs. 2022-08-24 22:08:47 +08:00
ValKmjolnir d2b63b394e 📝 optimize codes 2022-08-01 22:51:19 +08:00
ValKmjolnir 13ddfa5050 📝 delete unnecessary code & change test file. 2022-07-31 19:26:13 +08:00
ValKmjolnir 4ab8a730a6 📝 change int in code to i32, optimize code. 2022-07-31 02:19:29 +08:00
ValKmjolnir fb37283be0 🚀 move fg constants to stl/fg_env.nas, add io.exists. now dlopen and import can search file in PATH. 2022-07-28 21:44:55 +08:00
ValKmjolnir 76aca0d528 correct types in nasal_codegen.h 2022-07-27 00:59:35 +08:00
ValKmjolnir 49a7ed28e9 🚀 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 65fe7daff6 📝 change name of used types 2022-07-23 12:35:21 +08:00
ValKmjolnir dea85929cd 📝 change identifiers' name 2022-07-18 23:54:44 +08:00
ValKmjolnir 00c7c4044a optimize code & replace all printf with std::cout. 2022-07-09 23:36:14 +08:00
ValKmjolnir fdcd85dadf optimize code. 2022-07-08 23:00:36 +08:00
ValKmjolnir 87d7de5d73 📝 change some identifiers' name. 2022-07-08 18:16:00 +08:00
ValKmjolnir aea8b317c7 🚀 shrink code size & now import module can search lib file from local dir and dirs in PATH 2022-07-08 00:42:56 +08:00
ValKmjolnir 8b63c44266 optimize codes 2022-05-22 18:19:13 +08:00
ValKmjolnir 11b5d6fc56 📝 add notes in nasal_codegen.h and nasal_vm.h. add register_info() in debugger. 2022-05-21 14:22:54 +08:00
ValKmjolnir e1c09fb4a2 💬 change code related to macros 'PRTHEX' 2022-05-08 19:43:27 +08:00
ValKmjolnir a4bbb100b6 add utf-8 identifier check in nasal_lexer & fix printf format at windows platform & add test file utf8chk.nas 2022-05-07 16:50:13 +08:00
ValKmjolnir 7fd3c4213f 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 1d4494163c change makefile 2022-04-26 22:53:35 +08:00
ValKmjolnir ce48ec1b8d change visual settings in -c/-dbg 2022-04-23 01:51:49 +08:00