Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Evaluation of rules to include optional closure that can work against internal parameters of modules #21

Merged
merged 10 commits into from Jan 2, 2022

Conversation

heckj
Copy link
Owner

@heckj heckj commented Jan 2, 2022

resolves #8
resolves #19

  • stub in optional evaluation closure to protocol and types
  • converted rule evaluation to use ModuleSet
  • simplified ModuleSet's initializers, and updated in testing
  • added evalClosure to initializers for all rules, updated tests to pass in nil for full initialization
  • switched out all the rules to specific typed rules, using generics - and layering over types in the LSystems
  • recreated the combinatorial explosion of rewrite() methods
  • fixed up the tests, although test coverage has dropped precipitously with the explosion of types
  • no more "casting" of types needed in the produce closures, and they no longer accept throwing closures
  • evaluation closures for parametric evaluation of rules now don't require casting either - all typed based on Rules

@heckj heckj self-assigned this Jan 2, 2022
@heckj heckj merged commit ccd6ff6 into main Jan 2, 2022
@heckj heckj deleted the parametric-rule-eval branch January 2, 2022 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant