Commit Graph
158 Commits
Author SHA1 Message Date
gnembon 156fc7eb21 improved explain, still hidden 2025-03-22 15:27:02 +01:00
gnembon 1928b4f866 improve explain bits to be usable 2025-02-26 18:41:22 +01:00
gnembon 7087fa8510 tweaks to formatting and optimize map definitions 2025-02-20 09:22:13 +01:00
gnembon f6ec86c20d fix explain printing 2025-02-19 19:23:36 +01:00
gnembon d40d9b7068 explain outputs functional target 2025-02-19 12:33:36 +01:00
gnembon a2c11c6762 removed wierd token morphs 2025-02-19 12:31:47 +01:00
gnembon eb1ca9702c added functional equivalence. Added element, define, modulo, exponent, match, assign, append, swap, opposite, identity, not, unpack, 2025-02-19 12:30:42 +01:00
gnembon 234c176670 small things 2025-02-19 11:13:31 +01:00
gnembon 6dd7bda6e4 move gamerule access out of expression, ranames 2025-02-19 11:10:02 +01:00
gnembon 29e139794c streamline parsing and evaluation structure 2025-02-17 00:32:13 +01:00
gnembon 14be0aef52 extract commonly used class from the Tokenizer 2025-02-16 18:57:19 +01:00
gnembon fd098151c4 25w03a 2025-01-16 12:43:30 +01:00
altrisi 93bec37dac Simplify and optimize bit roll operations
Suggested in #1666, ran many testing to check it gives the same results
2023-03-08 13:24:37 +01:00
gnembon 277872b33c warning cleanup 2023-02-08 21:13:15 +01:00
gnembon 75d94b0570 cleanup of scarpet dependencies 2023-02-08 21:13:14 +01:00
gnembon 8f61271606 semi-auto cleanup 2023-02-04 13:26:21 +01:00
altrisi 889e3b6999 Replace usages of j.u.Stack with fastutil's
Java's is synchronized everywhere, reducing performance given we don't need it to be. It's recommended to use `Deque` as a replacement, but given we have fastutil's, we use those

Closes #1640
2023-01-24 13:46:53 +01:00
altrisi 1eb25ba1b5 Improve unexpected java exception in scarpet error slightly 2023-01-20 18:53:26 +01:00
altrisi 1466006638 Don't compute tree size and depth with debugging disabled (#1588) 2022-11-09 09:59:00 +01:00
altrisi a50a0d7328 Fix wrong line numbers by not trimming the start of expressions
We still trim the end because else `Tokenizer` crashes...
But trimming the end doesn't matter because there's it doesn't affect anything.
2022-10-09 13:13:37 +02:00
altrisi a60bc386cb Refactor Module into a single record type and fix system globals (#1383) 2022-05-17 20:11:49 +02:00
gnembon 0be0fd1eff swap default variable values to null/undef 2022-02-01 01:25:47 +01:00
altrisi 9fb6ec91cb Minor improvements to scarpet annotation API (#1239) 2022-01-08 23:05:21 +01:00
Ghoulboy b935fadadf Add bitwise operations to scarpet (#1094) 2021-11-09 23:55:54 +01:00
altrisi 7486670918 Report stack traces through the logger (#1050) 2021-10-11 03:37:30 -03:00
gnembon 36df542072 lazy functions with set parameter sizes will report an error if no properly specced. Fixes #1064 2021-09-06 23:05:13 -03:00
gnembon 572fc8573e fixes to handling of NBT tags. Fixes #1080 2021-09-04 23:44:45 -03:00
gnembon 6f80c7959e node optimizations should optimize only one argument depending on associativity. Fixes #1046 2021-08-22 22:51:23 -03:00
altrisi 7fb5e47da5 Use newer Java features in places where it makes sense and more (#1009) 2021-08-03 07:32:40 -03:00
gnembon 35a97117fe annoying, fixes #963 2021-06-29 02:07:07 -03:00
gnembon d29adf3a48 whatever, Fixes #895 2021-06-11 03:41:44 -03:00
gnembon f21897fab1 added custom context to be used in optimization evaluations that should expose all programmers issues, while allowing reporting errors to the error snooping entity. Fixes #875 2021-05-22 01:21:20 -03:00
gnembon 1633cca07a better reporting 2021-05-05 01:23:17 -03:00
gnembon 8d97ab26a9 script compile time optimizations. 2021-05-05 00:25:31 -03:00
gnembon 06c9aea326 tracking module integrity when module composition changes 2021-04-29 02:17:02 -03:00
gnembon c476e814b4 better thread handling and removal of unused code. 2021-04-23 21:42:55 -03:00
gnembon bed9e2c60a docs 2021-04-23 01:20:42 -03:00
gnembon 74bd0bb81e dont be lazy refactor 2021-04-22 20:37:48 -03:00
gnembon a65d16c9ba WIP unpacking of parameters. 2021-04-21 12:21:47 -03:00
gnembon 9117d85c73 for 2021-04-04 19:45:08 -03:00
gnembon dafebffb5a Rewording since all extra semicolons are now stripped in tokenization stage. Fixes #771 2021-04-04 19:22:06 -03:00
gnembon eab24f7896 added reset_seed 2021-03-12 06:11:55 -04:00
altrisi a155494d11 Allow some exceptions to be handled 2021-02-19 19:54:41 +01:00
gnembon 07dce7bc2e risky optimizations. 2020-11-27 02:30:10 -04:00
gnembon 2a403c36c8 added deprecation warnings, fixes #568 2020-11-25 01:49:56 -04:00
gnembon 6f0faf991a expanded long arithmetic 2020-10-12 11:56:52 -03:00
gnembon e8b2060fb3 variable number of arguments for user defined functions. 2020-09-22 04:38:08 -03:00
gnembon cbe91b4759 unhandled throw() now reports as error. Fixes #446 2020-09-10 00:32:36 -03:00
gnembon 33f400e904 refactor 2020-09-09 16:19:12 -03:00
gnembon 59575ec607 refactor breaking up API and language defs 2020-09-09 15:37:03 -03:00