Commit Graph

194 Commits

Author SHA1 Message Date
45f36e6e87 cdump.c: major refactoring; various fixes 2023-05-27 23:15:58 -05:00
819e76b711 cdump.c: fix instruction and line info dumping 2023-05-27 23:15:12 -05:00
f116efa02c started cundump.c:cosmoD_undump(); minor fixes 2023-05-25 21:12:21 -05:00
465f4d5e4a started cdump.c:cosmoD_dump() 2023-05-25 19:41:13 -05:00
3efee51224 minor refactoring and typos 2023-05-25 19:40:15 -05:00
2836de090b removed stale COBJ_STREAM usage 2023-05-25 18:34:39 -05:00
8e278e3a7d update Docs to reflect keyword changes 2023-02-10 20:46:05 -06:00
c8cae03604 syntax: 'var'->'let' 'function'->'func'
- 'var' has some weird scoping connotations with users of JS. better to change it to 'let', which will decide whether to make the variable a local or a global
- 'func' looks visually appealing lol
- some minor refactoring done in cparse.c
2023-02-09 15:58:25 -06:00
5d805e258b minor formatting fixes 2023-02-09 12:52:36 -06:00
8df4cc65e3 removed CObjStream 2023-02-09 12:42:09 -06:00
7279623e24 added clang-format 2023-02-09 12:32:48 -06:00
517b0b9532 Removed '-Werror' to the Makefile 2021-06-11 15:01:53 -05:00
1df2e212cb
Merge pull request #4 from NeoInversion/dev
Commit authored by https://github.com/NeoInversion
2021-03-28 01:18:39 -05:00
Inversion
84ec5d2aee Add documentation for the OS library 2021-03-27 23:11:47 -07:00
6859ec98ad Added boilerplate for CObjStream 2021-03-20 01:44:03 -05:00
057716e0d4 Added os.system() to the os.* library 2021-03-20 01:02:13 -05:00
b9e9dedac6 Updated Appveyor to test testsuite 2021-03-19 22:25:23 -05:00
1813bbeb1b Added minimal testsuite for IC
- main.c will now report errors for passed scripts
2021-03-19 22:23:04 -05:00
471589d379 Added svg to README, whitelisted commits only effecting the binary 2021-03-16 15:05:20 -05:00
70f931df18 Added AppVeyor CI 2021-03-16 14:54:52 -05:00
c13db54d7d Added '__equal' metamethod docs 2021-02-24 12:52:31 -06:00
da85d640ce Added another example script 'compare.comso'
- This stresses the table implementation as well as cosmoV_equals
2021-02-23 11:50:41 -06:00
6bc4ec6b04 Improved cosmoO_equals performance for strings 2021-02-23 11:49:57 -06:00
f92ffcecbd Added '__equal' metamethod, slightly refactored cosmoO_equal
- ISTRING_EQUAL has been added
2021-02-20 12:42:13 -06:00
66d77bc54b Refactored cosmoO_equals
This sets up room for the '__equal' metamethod to be added

- cosmoO_equals now requires the state to be passed
- cosmoV_equals now requires the state to be passed
- cosmoT_get now requires the state to be passed
2021-02-19 17:04:23 -06:00
afac75753f cparse.c now throws an error on illegal statements 2021-02-19 12:47:12 -06:00
92b2db9678
Added <string> arg to assert()
Commit authored by https://github.com/NeoInversion
2021-02-16 18:15:45 -06:00
Inversion
b30616bb3c Temporary fix for possible bug 2021-02-16 16:07:10 -08:00
Inversion
9e6c6038f1 Update standard library documentation 2021-02-16 15:53:20 -08:00
Inversion
1200e2d512 Add optional custom error message to assert 2021-02-16 15:53:07 -08:00
2050359d2f Added C99 support, refactored headers 2021-02-15 16:20:04 -06:00
47051575cb Added basic standard library docs 2021-02-15 14:25:08 -06:00
7c7a2ed8d9 Added math.rad() and math.deg() 2021-02-15 14:06:43 -06:00
d1ea5c9703 Added trig. functions to the math library 2021-02-15 14:00:26 -06:00
7c6c075c2a Added OP_POW to cdebug.c; refactored cosmoV_registerProtoObject
- cosmoV_registerProtoObject now walks the object list and updates the proto's for objects of the objType which have a NULL proto.
- misc. comment changes in cvm.h as well.
2021-02-13 20:08:35 -06:00
14539057aa Added string.rep() to the string library 2021-02-13 19:07:47 -06:00
461e1d0c15 Minor Makefile fix 2021-02-11 20:35:42 -06:00
2e07715a7d Added CMake support
should make integration into visual studio easier for people
2021-02-11 20:34:04 -06:00
bc43eaaa75 Minor cbaselib.c cleanup 2021-02-11 00:58:12 -06:00
43a278e12d
Added error, string.len, and cosmoV_readCString
Commit authored by https://github.com/NeoInversion
2021-02-11 00:27:23 -06:00
Inversion
44f1674b09 Added argument type check to string.len 2021-02-10 22:24:31 -08:00
Inversion
27aedd2969 Updated baselib in accordance with cosmoV_readCString 2021-02-10 22:14:58 -08:00
Inversion
7caa696aa2 Added cosmoV_readCString for convenience 2021-02-10 22:14:31 -08:00
Inversion
2e395065f8 Add string.len to base library 2021-02-10 22:02:35 -08:00
Inversion
5b8dc30bb8 Added error to the base library 2021-02-10 21:48:41 -08:00
1539a7e676 Added power operator '^', added OP_POW
- added TOKEN_CARROT to clex.[ch]
2021-02-10 17:26:20 -06:00
24bbc22cd4 Minor os.read() fixes 2021-02-10 17:11:52 -06:00
cfb4df66f9 Added optional os.* library, fixed cosmoB_loadLibrary
- os.time() returns the UNIX Epoch time in seconds
- os.read() reads file and returns the data as a <string> object
2021-02-10 17:10:03 -06:00
7db0782991 Added support for multiline comments using '/*' and '*/' 2021-02-10 15:39:36 -06:00
78e21a0f28 refactored cosmoV_set & cosmoV_get, renamed COSMO_TOBJ->COSMO_TREF
also changed print() to print raw primitives instead of generating a <string> needlessly. helped performance immensely in scripts like `examples/increment.cosmo`
2021-02-07 14:32:39 -06:00