Commit graph

57 commits

Author SHA1 Message Date
Simon Brooke 3829bd97a9 Well, I didn't get rid of simplify altogether...
But it and the rest of the code are greatly simplified. All correctness tests pass, many others don't.
2023-07-22 21:11:06 +01:00
Simon Brooke a436499d98 Added protection against null pointer exceptions in numeric properties. 2023-07-21 23:52:04 +01:00
Simon Brooke b4f796aca4 Major overhaul of rule metadata, so upversioned to 0.3.0
Many tests do not pass at this time.
2023-07-19 20:35:40 +01:00
Simon Brooke 8c2e44b42a Tactical commit before experimenting with a major change. 2023-07-19 09:19:18 +01:00
Simon Brooke 4b721219bd Continued work on cleaning up the parser 2023-07-18 22:11:11 +01:00
Simon Brooke 4de7b0beb4 This is very close to right, but it isn't working yet. 2023-07-15 14:59:30 +01:00
Simon Brooke 93a0f3ea1d Flow rule generation very nearly correct!
Not all tests pass; additional conditions are not yet evaluated.
2023-07-15 10:16:21 +01:00
Simon Brooke 2a5d598f28 Started work on generating code from flow rules. 2023-07-12 23:43:59 +01:00
Simon Brooke 256f9efd5e Major overhaul of the parsing of disjunct expressions
... which it turns out have NEVER worked, and badly written tests were masking the problem. Also tagging rules with metadata as first step towards mixing production and flow rules.
2023-07-12 20:31:07 +01:00
Simon Brooke fb39f1ee9c Some work on flow, mainly code tidy-up 2023-07-11 09:15:56 +01:00
Simon Brooke ca3861b505 Upversioning whole system to 0.2.0, for flow feature
This is definitely a point version change!
2023-07-10 13:48:33 +01:00
Simon Brooke bbaca4710b Work on flows, but also preparing for i18n. 2023-07-09 22:25:50 +01:00
Simon Brooke fe92045f14 Merge remote-tracking branch 'origin/develop' into develop 2023-07-09 10:10:32 +01:00
Simon Brooke 311ebafa5c Tackling bit-rot 2023-07-08 10:11:52 +01:00
simon a68a3c9135 Revert to using 'core' parser rather than new declarative parser, which still
has bugs.
2016-12-27 15:53:29 +00:00
simon 88d707a32e Fixed all failing tests. Two issues:
1. The regression test failures were both errors in the tests rather than in
the code under test;
2. The failure in the 'bulk' test relates to the fact that the new declarative
parser cannot cope with trailing whitespace.
2016-09-23 12:53:00 +01:00
simon ddf967088e Standarised header comments 2016-08-21 13:51:56 +01:00
simon 948bd7e5f2 Standardised header comments in line with current best practice. 2016-08-21 13:50:54 +01:00
simon ca9553fe83 Back to no exceptions in test, still two test failures which need to be investigated. 2016-08-13 23:20:34 +01:00
simon 3168c1b2fb Trying to get code quality up, but in the process I've broken something -
I think, the simplifier.
2016-08-13 19:45:43 +01:00
simon d2a73ba408 Major restructuring, switched over to use the new declarative parser.
Some rules in the bulk test file no longer parse, but all rules in the
demonstration rule-sets do.
2016-08-10 20:11:17 +01:00
simon 9836cbff50 All tests pass. I should now be able to ditch the old parser and use the
new, but first I want to do some major code restructuring.
2016-08-10 19:23:16 +01:00
simon 1c6ceb899c Substantially closer to the declarative parser fully working, but not
yet perfect.
2016-08-10 13:30:15 +01:00
simon e40d89fdef Very considerable progress on the new parser. The deer/wolves rules still fail,
as does one complicated form of neighbours rule; but I'm almost there.
2016-08-03 17:41:48 +01:00
simon d44ba60802 Merge branch 'master' of ssh://goldsmith.journeyman.cc/srv/git/mw-parser 2016-08-03 10:23:16 +01:00
Simon Brooke 5db1055027 Some work on unit testing declarative parser. 2016-08-03 10:07:18 +01:00
simon 547edbe56a Added the simplifier, although it's not currently used, I don't think 2016-03-04 01:02:17 +00:00
Simon Brooke 717097070a State of play just before going back to Glasgow. Doesn't fully work yet, but close. 2016-01-03 14:59:24 +00:00
Simon Brooke ac73639533 Now passing on all but neighbours rules, which I knew I hadn't dealt with 2016-01-02 15:09:55 +00:00
Simon Brooke b23aae26ce Commit before alph-ordering grammar. 2016-01-02 14:24:40 +00:00
Simon Brooke 77c7dc4a91 Further substantial progress made, but it still doesn't completely work. 2015-12-29 14:11:36 +00:00
Simon Brooke b08881a99e Added many more unit tests; parser appears to be working correctly,
generator still needs work. But very promising!
2015-12-28 19:46:18 +00:00
Simon Brooke 6c1ecd7f45 Preparing to release to github. Added comments about the status of the
core and insta parsers.
2015-03-28 16:41:02 +00:00
Simon Brooke 6166dc254c Now almost to the point that the new parser can compile simple rules! 2015-02-13 22:25:53 +00:00
simon 52a4f62310 New parser now well advanced, parses all but one of the test rules.
However code generation only just started.
2015-02-12 08:11:50 +00:00
Simon Brooke bbac9a9c6e New work on the parser, based on instaparse. 2015-02-10 22:26:53 +00:00
Simon Brooke 21c1044a6d Much more work on test coverage, exposed probable bug. 2014-08-13 19:20:38 +01:00
Simon Brooke 34bb22dbfe Worked on test coverage. 2014-08-13 18:06:33 +01:00
Simon Brooke e4ec5715a7 Getting the right data into the manifest; sadly, not succeeding in getting
it out again.
2014-07-27 21:07:10 +01:00
Simon Brooke b197368c66 Minor tidy-up 2014-07-21 11:03:07 +01:00
Simon Brooke 91310af2d8 Rule language now working cleanly with no errors showing. Very occasional
null pointer exception during parsing, not yet diagnosed.
2014-07-20 15:15:12 +01:00
Simon Brooke a61ace1694 Improved debugging, and lots more tests. Ultimately I intend the
enhanced debugging to be optional, because it will have a performance hit
2014-07-19 13:24:04 +01:00
Simon Brooke 4acb2617be Added the '...neighbours within distance...' feature to the rule language. 2014-07-18 15:15:12 +01:00
Simon Brooke 540e8df404 Comprehensive and systematic unit testing of all rule language constructs. 2014-07-17 09:51:53 +01:00
Simon Brooke 98f1579869 Fixed the 'Keyword cannnot be cast to Number' bug. 2014-07-15 09:22:24 +01:00
Simon Brooke 7375b668c0 Still some bugs in rules generated from rule-language source. However,
a great deal does work.
2014-07-14 23:22:33 +01:00
Simon Brooke e5b74a4a68 All core rules now compile into credible-looking code. 2014-07-13 20:59:51 +01:00
Simon Brooke ef3ec6cf18 Much hacking on rule language, getting it to support initial behaviour. 2014-07-13 20:27:14 +01:00
Simon Brooke e15068ec2e Changed license to GPL; some minor documentation changes. 2014-07-13 14:08:13 +01:00
Simon Brooke 0d3ca990c1 Woohoo! Feature complete. All the language features I need to reimplement
the core rule set in the rule language now compile.
2014-07-08 20:22:58 +01:00