I am considering using datalog as a database backend for an application I am writing, because I see potential to allow me to switch between representations easily without having to sacrifice my collected data or write a cumbersome migration.
However, I can't foresee how I would deal with changing data -- e.g. something as simple as a user-changeable password. I had an idea to tag rows with a date:
changepassword(<user>, <passhash>, <date>)
and then use the latest, but there does not seem to be a way to get the latest, without returning all rows and filtering them on the application side.
How are datalog applications designed to handle changing data?