WIP
This commit is contained in:
parent
63e28fc7a9
commit
86e7669e51
@ -440,6 +440,56 @@ Here is a useful one-sentence definition:
|
||||
|
||||
---
|
||||
|
||||
## How Useful This Subset Would Be
|
||||
|
||||
This subset would be genuinely useful, but only for the right jobs.
|
||||
|
||||
It would be useful for:
|
||||
|
||||
- understanding a Geolog theory in simpler rule form,
|
||||
- debugging the rule part of a theory,
|
||||
- exporting some Geolog programs to Datalog tools,
|
||||
- comparing Geolog evaluation with Datalog evaluation,
|
||||
- and teaching the parts of Geolog that are close to rule-based database logic.
|
||||
|
||||
It would be especially useful for theories that are mostly:
|
||||
|
||||
- relation-based,
|
||||
- rule-based,
|
||||
- and not dependent on creating fresh objects during chase.
|
||||
|
||||
Good examples include:
|
||||
|
||||
- graph reachability,
|
||||
- transitive closure,
|
||||
- propagation rules,
|
||||
- dependency rules,
|
||||
- and many database-style logic programs.
|
||||
|
||||
But this subset would not cover the full point of Geolog.
|
||||
|
||||
It becomes less useful when a theory depends on:
|
||||
|
||||
- existential conclusions,
|
||||
- equality-heavy reasoning,
|
||||
- or the full meaning of native functions.
|
||||
|
||||
So the best way to think about it is this:
|
||||
|
||||
- it is a very useful **bridge**,
|
||||
- a useful **debugging view**,
|
||||
- and a useful **restricted compilation target**,
|
||||
- but it is not a replacement for full Geolog.
|
||||
|
||||
If built well, the ideal behavior would be:
|
||||
|
||||
- if a Geolog program fits inside the subset, export it cleanly,
|
||||
- if it does not fit, explain clearly why not.
|
||||
|
||||
That alone would make the subset valuable.
|
||||
|
||||
---
|
||||
|
||||
## Final Summary
|
||||
|
||||
If you only want a practical translator, the right plan is:
|
||||
@ -451,4 +501,3 @@ If you only want a practical translator, the right plan is:
|
||||
- reject existential and equality-heavy features.
|
||||
|
||||
That gives a subset that is useful, understandable, and realistic to translate automatically.
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user