Commit Graph

39 Commits

Author SHA1 Message Date
ValKmjolnir e51ba92f30 🚀 optimize code 2022-08-08 22:10:51 +08:00
ValKmjolnir ca6cb5daae 🐛 fix bug of incorrectly searching paths of lib.nas and dynamic libs.
`dylib.dlopen` now only needs file name of dynamic lib, not the real path.
2022-07-29 22:49:50 +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 d350d94bc5 🚀 add new default bar in stl.process_bar 2022-07-25 22:15:40 +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 7c1d45a200 🚀 update makefile to choose different compilers by users & fix some codes for MSVC to compile. 2022-07-16 16:53:11 +08:00
ValKmjolnir bdd0cb2912 📝 change some identifiers' name. 2022-07-09 16:24:58 +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 a402e6d7d2 🚀 add a new way to import other files:
`import("./stl/queue.nas");` now has same function as `import.stl.queue;`
2022-07-06 22:21:01 +08:00
ValKmjolnir beba975ff0 change format of error info
parser now can report exact place where is lacking ';' or ','
2022-06-30 23:15:10 +08:00
ValKmjolnir 949a248120 use effective way to check if file exists 2022-04-21 20:51:47 +08:00
ValKmjolnir 0d49a3c3f9 add lib load code to automatically load lib.nas 2022-04-21 19:45:16 +08:00
ValKmjolnir de0a6d9388 change name of enum:ast_hashmember->ast_pair, ast_new_iter->ast_iter
change ast_hashmember to ast_pair is because this type in fact is the same as std::pair<std::string,nasal_ref> in C++
2022-01-31 17:22:44 +08:00
ValKmjolnir 34f07ffb6b optimize nasal_import::check_import 2022-01-30 23:26:30 +08:00
ValKmjolnir 1ae354c0cf lexer,parser,import,codegen use the same error module. 2021-12-23 21:15:50 +08:00
ValKmjolnir bc9039dd37 change code structure 2021-11-02 22:44:42 +08:00
ValKmjolnir 101714986d optimize nasal_ast and fix bug in opr_slc2 2021-10-20 20:54:23 +08:00
ValKmjolnir d7cffc76bd update 2021-10-16 23:36:43 +08:00
ValKmjolnir a7b1851967 optimize code structure 2021-10-16 21:08:57 +08:00
ValKmjolnir a71b08a927 update 2021-10-15 22:21:57 +08:00
ValKmjolnir 645a652830 change function name and cli format 2021-10-14 23:22:28 +08:00
Li Haokun 52fbd729cc bad access bug fixed 2021-09-13 19:55:03 +08:00
ValKmjolnir 143a59c735 update 2021-08-09 01:02:27 +08:00
ValKmjolnir c5fea0c101 update 2021-08-01 22:37:42 +08:00
Li Haokun d9d7a1edfc add trace back info 2021-07-16 17:18:13 +08:00
ValKmjolnir 855e0e441f avoid unnecessary deep copy by using rvalue ref
and test file update.
bug fixed in test/lexer.nas
2021-06-24 22:10:08 +08:00
Valk Richard Li 166fe32839 front end optimization&stack overflow prompt
change parameter type to avoid unnecessary copies of string.
change stack depth from 65536<<4 to 16+(65536<<2).
now you could know stack overflow when it happens
2021-06-07 23:53:43 +08:00
Valk Richard Li a3dbaebfd8 bug fixed
fixed SIGSEGV when failed to load file in nasal_lexer::openfile
2021-06-06 19:17:02 +08:00
Valk Richard Li b2e85de7a7 bug fixed
a gc bug which causes  fatal error.
add member value collect to make sure that nasal_val is not collected repeatedly.
use builtin_alloc in builtin function to avoid incorrect collection of value in use(gc_alloc).
change free_list to free_list[vm_type_size] to avoid too many calls of new/delete(but seems useless?)
but the most important thing is fixing this bug.
2021-05-31 19:10:59 +08:00
Valk Richard Li 468ad6157f update 2021-02-13 11:09:31 +08:00
Valk Richard Li 4112a05a83 identifiers' name changed 2021-02-12 23:48:51 +08:00
Valk Richard Li f97ef49fb7 update 2021-01-06 21:07:34 +08:00
Valk Richard Li 14c43c6a42 update & bug fixed 2021-01-05 23:17:32 +08:00
Valk Richard Li 538d37a0cd update 2021-01-02 23:57:21 +08:00
Valk Richard Li 931e6bae0b update 2020-11-20 19:15:12 +08:00
Valk Richard Li 53fb5b181f update 2020-10-23 17:10:02 +08:00
Valk Richard Li 84f09cb932 change project structure
version 3.0
2020-10-23 14:53:04 +08:00