Andrea Cavalli
d288e0d96c
Fix empty input movement
2023-08-23 16:54:06 +02:00
Andrea Cavalli
7ae4315837
Refactor caret positioning
2023-08-23 16:47:55 +02:00
Andrea Cavalli
3031966145
Fix zoom, rename block functions
2023-08-23 12:04:27 +02:00
Andrea Cavalli
0aceed466d
Fix gpu input, update jogl
2023-08-18 17:47:05 +02:00
Andrea Cavalli
1ec7bee089
Temp
2022-03-14 11:22:38 +01:00
Andrea Cavalli
12329c5ffe
Merge remote-tracking branch 'origin/master'
...
# Conflicts:
# core/src/main/java/it/cavallium/warppi/gui/CalculatorHUD.java
2019-12-16 16:59:05 +01:00
Andrea Cavalli
0335dadcea
Fixed preview url
2019-12-16 16:54:10 +01:00
Andrea Cavalli
0671f0d6b5
Removed javascript optimizations due to a TeaVM compilation bug
2019-11-16 02:02:25 +01:00
Andrea Cavalli
4c29eeb31c
Bugfixes
...
Fixed implicit multiplication symbols, zoom is now 1x, debug steps are printed, fixed missing numeric chars, changed RootSquare base class to FunctionSingle, added two hardcoded multiplication rules, added rootsquarerule, isolated the swing engine from the window, added 2 Fractions rules and 1 exponent rule
2019-11-16 01:32:47 +01:00
Andrea Cavalli
26dc8369a7
Bugfixes
2019-11-02 23:13:19 +01:00
Andrea Cavalli
70ff11da7f
Added bounded render contexts
2019-11-01 18:04:01 +01:00
Andrea Cavalli
a9dd7de800
Merge remote-tracking branch 'master/dev'
2019-11-01 15:39:27 +01:00
Andrea Cavalli
da387d1165
Removed old libraries
2019-11-01 15:25:01 +01:00
Andrea Cavalli
8e11197368
Updated .gitignore
2019-11-01 13:35:30 +01:00
Riccardo Azzolini
fb43f00485
Merge pull request #8 from razzolini/rules-dsl
...
Implement a domain-specific language for the definition of algebraic manipulation rules
2019-10-29 22:16:55 +01:00
Riccardo Azzolini
a74f047655
Fix/improve hashCode for Functions
...
Some types of Function had hashCode methods which didn't match the
behavior of equals, while others could simply be rewritten in a simpler
way by using Objects.hash.
2019-10-25 22:48:49 +02:00
Riccardo Azzolini
0c316226e6
Make Function.equals test for exact equality instead of equivalence
...
Actually, testing for equivalence was only partially implemented (by
considering the commutative property for some FunctionOperators).
Additionally, should it be needed in the future, equivalence testing
would probably be better implemented as a separate, specialized method
anyway.
2019-10-25 22:30:10 +02:00
Riccardo Azzolini
d8f401cb22
Remove zip file handling code and zip4j dependency
...
.zip files were only used to cache compiled Java rules, and the new rule
system has nothing to cache.
2019-10-25 20:49:31 +02:00
Andrea Cavalli
5c7411d44c
Contextualized methods
2019-10-25 13:59:20 +02:00
Riccardo Azzolini
12406c787b
Ensure that lex and parse methods are only called once per instance
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
c37f7f52b3
Specify that TabExpandedString only works on single lines
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
804fee4db0
Use tab-expanded column numbers when formatting DSL errors
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
b3f2ad82d0
Migrate from JUnit 4 to 5
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
fc119efedc
Remove language level specification from warppi-core pom.xml
...
The language level is specified in the root pom.xml file, and there's no
need to override it here.
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
082f694b1b
Tweak DSL error formatting
...
- Add a blank line between the DslFilesException stack trace and
formatted error messages.
- Quote the sub-function name in the message for UndefinedSubFunction
errors.
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
fbb6cf590d
Throw an exception when a sub-function is undefined in SubFunctionPattern.replace
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
feb894bacd
Improve SubFunctionPattern documentation
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
b4fc6dd019
Improve PatternRule documentation
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
eb8fcaafb9
Keep track of identifiers separately for each SubFunctionPattern object
2019-09-09 18:34:52 +02:00
Riccardo Azzolini
c8656d1b30
Improve DSL front-end documentation
2019-08-12 11:28:39 +02:00
Riccardo Azzolini
e297d3592f
Reduce creation of Map objects in Pattern matching
2019-08-12 11:28:39 +02:00
Riccardo Azzolini
a76511ea19
Remove the warppi-rules module
2019-08-12 11:28:39 +02:00
Riccardo Azzolini
2b9fb97648
Make DSL rule loading work on TeaVM
2019-08-12 11:28:39 +02:00
Riccardo Azzolini
e5b64ce218
Make TeaVMStorageUtils.read work instead of hanging
2019-08-09 17:53:47 +02:00
Riccardo Azzolini
fef30042ce
Avoid using methods which are not available on TeaVM
2019-08-08 14:36:07 +02:00
Riccardo Azzolini
d4b91c4d4f
Merge branch 'master' into rules-dsl
2019-08-08 12:52:59 +02:00
Riccardo Azzolini
7819e19e6f
Make Function visitor an inner interface of Function
2019-08-07 13:11:59 +02:00
Riccardo Azzolini
86c7da8c81
Test Lexer with empty input
2019-08-07 13:11:59 +02:00
Riccardo Azzolini
aeb0388925
Implement DSL error pretty-printing
2019-08-07 13:11:59 +02:00
Andrea Cavalli
17d1bddbf1
Fixed picture bug
2019-04-29 23:07:24 +02:00
Andrea Cavalli
9e1e751a59
Implemented TouchDevice and DeviceStateDevice
2019-04-09 22:38:22 +02:00
Cavallium
87d4daf195
Updated gitignore
2019-04-09 18:23:35 +02:00
Andrea Cavalli
60f91fbc2e
Better boot code
2019-04-09 18:19:06 +02:00
Andrea Cavalli
ff7dd21788
More appropriate class names
2019-02-27 23:29:03 +01:00
Andrea Cavalli
c906c43b8b
Updated TeaVM to the latest snapshot and fixed panels history behaviour
2019-02-25 13:12:22 +01:00
Riccardo Azzolini
788f9663e2
Use Collections.emptyMap and Collections.singletonMap in pattern matching code
2019-02-12 11:40:50 +01:00
Riccardo Azzolini
04d01565da
Correctly handle and report unterminated multiline comments in Lexer
2019-02-11 16:31:03 +01:00
Riccardo Azzolini
e86a7a6346
Remove Java rule compiling and loading code
2019-02-11 15:55:29 +01:00
Riccardo Azzolini
fd074b16b7
Do not load DSL rules on JavaScript platforms
2019-02-11 15:11:59 +01:00
Riccardo Azzolini
2e36bc83bf
Fix incorrect rules and port them to the DSL
2019-02-11 12:21:43 +01:00