The version of PLA4 is a step towards more uniform
treatment of diverse models, and under the hood
moving repsonsibility for the graph generation and
metadata display to to the graphics2d actor.
The PLALib folder contains the PLA code for manipulating models.
The Models folder contains the models. It comes with one demo model,
TinyKB.
Models/Template has all the required structure of a model.
To start a new model, copy Template, add your own ops and rules
and edit the placeholder files as described in Models/Template/README.txt
Note that theops.maude is intended to be THE SAME for every model.
Any added sort and op declarations need to go in Ops modules.
No doubt we will find a need to adapt theops from time to time,
but this should not be done lightly
You will notice that there are 4 load-... files
load-jpl-fresh.maude
load-jpl-restore.maude
load-jpl-fresh-all.maude
load-jpl-restore-all.maude
fresh[-all] regernerates the knowledge base (tkb,-graph,-occmap files)
and the JSON description. Without -all only the ops that are actually
used in a rule occurrence are considered. With -all all the declared
ops are included. The latter is mainly useful when we want to
edit rules on the fly, as it provides an extended vocabulary.
restort [-all] just loads the saved kb (maude and json).
Use this unless you have edited the maude since the last fresh.
There is a startup file for each load file.
startup-jfresh-all.txt for load-jpl-fresh-all.maude
startup-jfresh.txt for load-jpl-fresh.maude
startup-jrestore-all.txt for load-jpl-restore-all.maude
startup-jrestore.txt for load-jpl-restore.maude
startup.txt -- defaults to startup-jrestore.txt -- edit to pick your default
The models in the PL distribution have generated and saved the KBs.
When you build your own model or edit an existing one you will need
to use load-fresh to save the current KB version.