Commit Graph

141 Commits

Author SHA1 Message Date
Kayne Ruse
f6ec6a8c73 The any type is now recognized as a type properly 2023-06-19 23:16:46 +10:00
Kayne Ruse
2157b2f540 Fixed an obscure compiler bug involving assignments and indexing, read more
TOY_OP_INDEX_ASSIGN_INTERMEDIATE was being used when it shouldn't have.

Now the check runs down the whole binary->right branch to ensure the given
node doesn't exist in that tree.
2023-06-15 12:29:25 +10:00
Kayne Ruse
1481216e69 Fixed chained functions, resolved #52 2023-06-14 17:41:30 +10:00
Kayne Ruse
1095e1a885 Added type casting a grouping bugfix, resolved #76 2023-03-17 20:57:47 +11:00
Kayne Ruse
2edfbbe3ef Found a compiler bug, thanks Aedan! 2023-03-17 14:01:16 +11:00
Kayne Ruse
e2fa1cf2e8 Moved lib_runner's drive system into the core of the lang 2023-03-15 06:12:35 +11:00
Kayne Ruse
f2f8aed23a Added short-circuiting support to && and || 2023-03-11 17:59:09 +11:00
Kayne Ruse
f84cdff883 Fixed order of operations 2023-03-07 06:49:17 +11:00
Ratstail91
efc1e764d2 Patched a casting error in round 2023-02-27 23:27:11 +11:00
Kayne Ruse
c5c0122243 BUGFIX: typeof keyword precedence was off 2023-02-27 21:47:38 +11:00
Kayne Ruse
348b7b8c24 Added some math utils to standard
* ceil
* floor
* max
* min
* round
2023-02-27 21:32:31 +11:00
Kayne Ruse
92c71a374d Implemented a basic random library 2023-02-23 19:19:17 +11:00
Kayne Ruse
3e6d21afbb Added abs(), hash() to libstandard 2023-02-23 18:36:12 +11:00
Kayne Ruse
3507104121 Fixed indexAccess potentially going awry with bad inputs
There's always one or two that slip through
2023-02-20 05:28:25 +00:00
Kayne Ruse
87de634e30 Updated version number to 1.0.0 2023-02-20 02:08:42 +00:00
Kayne Ruse
6fa224fa7b Hooks can't be dict keys, tweaked Toy_readFile 2023-02-18 16:47:38 +00:00
Kayne Ruse
1668dca255 Tweaked some APIs, hid some functions I don't want in the API 2023-02-16 13:06:07 +00:00
Kayne Ruse
7b501b71b5 commandLine now initializes with default values 2023-02-14 17:00:16 +00:00
Kayne Ruse
913738a4d1 Tweaked the runner test, should be orders of magnitude faster 2023-02-14 16:16:48 +00:00
Kayne Ruse
3312a38c7c Updated memusage tool 2023-02-14 16:05:43 +00:00
Kayne Ruse
0737b2a483 Dropped underscore functions in favour of UFCS 2023-02-14 08:37:31 +00:00
Kayne Ruse
1ed114b80d Allow for stmt to have empty clauses, resolved #58 2023-02-13 14:45:24 +00:00
Kayne Ruse
eb8e522bf2 Merged standard and timer, resolved #48 2023-02-13 13:58:41 +00:00
Kayne Ruse
16b71ba6f4 Implemented quicksort in _sort() 2023-02-13 13:31:58 +00:00
Kayne Ruse
9725f3c6a3 Patched some very obscure bugs 2023-02-12 16:54:44 +00:00
Kayne Ruse
8653a2663f Added _indexOf 2023-02-12 14:32:26 +00:00
Kayne Ruse
c00b32017b Dummied out lib timer 2023-02-11 01:42:44 +00:00
Kayne Ruse
aeb008c684 Fixed unary negation bug, removed newline from print 2023-02-10 18:38:25 +00:00
Kayne Ruse
53012dbce1 Added _filter() 2023-02-10 15:41:38 +00:00
Kayne Ruse
4fe57f9562 Added _containsKey() and _containsValue() 2023-02-10 15:27:39 +00:00
Kayne Ruse
3ba2e420ea Added _every() and _some() 2023-02-10 15:00:15 +00:00
Kayne Ruse
ee226ea426 Strengthened constness for cstrings and bytecode 2023-02-10 08:52:38 +00:00
Kayne Ruse
276648630e trying to uncluster-bomb the builtin functions 2023-02-09 16:12:42 +00:00
Kayne Ruse
e946a5f071 Patched segault in parser 2023-02-09 12:37:18 +00:00
Kayne Ruse
fc67d6a18b Fixed a segfault 2023-02-09 08:24:16 +00:00
Kayne Ruse
0fc8183799 Added _reduce 2023-02-06 09:46:20 +00:00
Kayne Ruse
9a6aa8d15e Added _trimBegin() and _trimEnd() 2023-02-06 06:11:17 +00:00
Kayne Ruse
0b9051cab2 Experimenting with numbers 2023-02-06 05:37:41 +00:00
Kayne Ruse
c875ae7a0e Added _forEach and _map, added tests for them 2023-02-06 00:51:07 +00:00
Kayne Ruse
c0ec5ef28e Tested _concat() with clashing dict keys 2023-02-05 22:46:00 +00:00
Kayne Ruse
3088c4fe6d Implemented _concat 2023-02-05 20:45:31 +00:00
Kayne Ruse
29f8a698b4 Added a mustfail test 2023-02-05 15:19:04 +00:00
Kayne Ruse
41d274177a String concatenation restricted to + and += signs 2023-02-05 15:15:32 +00:00
Kayne Ruse
7ea249f723 Added the about library, resolved #51 2023-02-05 14:43:46 +00:00
Kayne Ruse
0e932f24cc Added _toString() 2023-02-05 13:29:44 +00:00
Kayne Ruse
60225b733b Added _getKeys() and _getValues() 2023-02-05 12:49:12 +00:00
Kayne Ruse
15f99495a1 Aesthetics 2023-02-05 11:31:17 +00:00
Kayne Ruse
7b26527e95 Nesting index multiplication assignment fixed
This affects all arithmetic types applied to inner-nested compounds.
2023-02-05 06:28:24 +00:00
Kayne Ruse
386201b6e9 Added fib-memo.toy, fixed bugs until it worked 2023-02-04 17:01:58 +00:00
Kayne Ruse
8d278077b1 Added constant folding for strings, tweaked some error messages 2023-02-04 09:50:29 +00:00