Commit Graph

41 Commits

Author SHA1 Message Date
ValKmjolnir
29ee017af6 use new way of constructing var objects 2023-01-05 22:42:17 +08:00
ValKmjolnir
c63bd531a5 🎨 change clean command in makefiles 2022-12-25 17:58:05 +08:00
ValKmjolnir
c88cbd0063 add runtime.gc.extend 2022-12-04 20:28:51 +08:00
ValKmjolnir
34e29e398a 🎨 change code format 2022-11-26 22:49:22 +08:00
ValKmjolnir
2772fa748d 🚀 change module loading 2022-11-15 21:23:34 +08:00
ValKmjolnir
a0fe9ac669 add new ways of calling dylib function 2022-11-11 00:11:01 +08:00
ValKmjolnir
e150b632db 🚀 add new module matrix.cpp (in dev) 2022-11-06 23:30:18 +08:00
ValKmjolnir
2615a3ab85 🚀 optimize code 2022-11-06 18:20:10 +08:00
ValKmjolnir
d3fd8ce336 🎨 improve code format
delete option -v, --version, -l, --lex
2022-10-30 01:26:26 +08:00
ValKmjolnir
8583be337e 🚀 change module function parameter format to avoid warnings 2022-10-24 01:12:25 +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
8d0eadaa74 📝 fix MSVC warning in nasal_builtin.h & improve error output. 2022-09-04 23:08:06 +08:00
ValKmjolnir
2da3be7fc4 🚀 change cpp standard to c++14 & add command line colorful info output.
and fix a bug that program may crash if there's an error when coroutine is running
2022-08-31 23:24:41 +08:00
ValKmjolnir
6318f7e9e8 optimize header file, now modules could generate smaller dynamic libs. 2022-08-24 22:08:47 +08:00
ValKmjolnir
6f19398f90 🐛 fix compilation error of modules on macOS platform 2022-08-10 19:48:01 +08:00
ValKmjolnir
83c8d327bb 🐛 fix builtin_err in module to nas_err 2022-08-04 21:20:27 +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
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
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
00c7c4044a optimize code & replace all printf with std::cout. 2022-07-09 23:36:14 +08:00
ValKmjolnir
ec308f8053 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
3d1e3f49dc 📝 change identifiers' name and test/coroutine.nas, test/filesystem.nas 2022-07-06 16:04:21 +08:00
ValKmjolnir
f3ba80b41c 📝 unify code style of ./stl ./test 2022-07-02 13:53:50 +08:00
ValKmjolnir
503b834f05 📝 update test/httptest.nas 2022-06-11 12:49:26 +08:00
ValKmjolnir
20a4a4df4e 🚀 finish socket library:
socket.socket()

socket.closesocket()

socket.shutdown()

socket.bind()

socket.listen()

socket.connect()

socket.accept()

socket.send() socket.sendto()

socket.recv() socket.recvfrom()

socket.errno()
2022-06-08 19:06:16 +08:00
ValKmjolnir
a166134cc5 🚀 add module/libsock.nas, preparing to add socket lib into this language. 2022-06-06 16:34:21 +08:00
ValKmjolnir
b4aad5249b 🎨 fix a bug in module/keyboard.cpp that if program exited with an error, the terminal may not echo the text you input 2022-05-20 21:42:28 +08:00
ValKmjolnir
2542f4e43e 📝 update test/module_test.nas 2022-05-17 21:48:08 +08:00
ValKmjolnir
ad60aecdee change module/libmd5 to native function builtin_md5() in nasal_builtin.h 2022-04-06 22:30:49 +08:00
ValKmjolnir
5f4b2d80dc optimize libmd5.nas & test/md5.nas 2022-04-03 18:10:00 +08:00
ValKmjolnir
a9c66685e4 change module/makefile and test/md5compare.nas 2022-04-01 22:52:04 +08:00
ValKmjolnir
46f2392993 update test/md5.nas(still has bug) & add libmd5 in module(written in C++) 2022-03-28 17:14:11 +08:00
ValKmjolnir
15c5fbb1fb add module.nas to safely use dylib 2022-03-05 21:52:29 +08:00
ValKmjolnir
728211e611 fix bug in libkey and test/tetris.nas 2022-02-22 18:01:49 +08:00
ValKmjolnir
2d4255a162 finish tetris.nas 2022-02-21 17:10:13 +08:00
ValKmjolnir
7812c7f691 finish map drawing in test/tetris.nas 2022-02-20 17:58:13 +08:00
ValKmjolnir
84aa18d5d2 add new third-lib libkey that includes function: kbhit,getch,nonblock 2022-02-19 16:55:54 +08:00
ValKmjolnir
6812a389dc update new test data 2022-01-24 15:19:27 +08:00
ValKmjolnir
083293e3db little update 2021-12-16 23:53:13 +08:00
ValKmjolnir
e706214854 bug fixed & add os.platform 2021-12-08 18:46:32 +08:00
ValKmjolnir
ab6c194d71 add dylib.dlopen dylib.dlsym dylib.dlclose dylib.dlcall
now you could add your own modules into nasal without changing the source code!
2021-12-03 19:31:03 +08:00