Lexpedite / blawx

A user-friendly web-based tool for Rules as Code.
MIT License
100 stars 9 forks source link

Find alternative to EC pre-processing step #480

Closed Gauntlet173 closed 1 year ago

Gauntlet173 commented 1 year ago

Right now the reasoner pre-processes the user's code to convert dates that are relevant to event calculus into timestamps.

This method will not terminate if there are dates calculated on the basis of dates recursively.

It would be better if we could find a way that we could include a datetime to timestamp translation in the rules, and EC would still work.

J.A. has suggested that using a cut operator in the translation code might help.

It seems to me like it might also be possible to get a feature in s(CASP) that would allow us to manually defined duals for certain predicates, so that we can have more control over them. Or perhaps to get access to things like var(X), nonvar(Y) for use in mathematical calculations that should be treated like functions. Or both.

Gauntlet173 commented 1 year ago

Resolved in 1.6.0-alpha, for now, at least. There may be a desire to re-open this issue in order to regain access to month and year date calculations.