-*- mode: org -*-
FUNCTIONAL RELATIONAL PROGRAMMING
Maybe a summary of this could be:
- minimize mutable state
- move the remaining into relations
- manipulate relations with a declarative lang
There is in principle nothing to stop functional programs from pass- ing a single extra parameter into and out of every single function in the entire system. If this extra parameter were a collection (compound value) of some kind then it could be used to simulate an arbitrarily large set of mutable variables. In effect this approach recreates a single pool of global variables — hence, even though referential transparency is maintained, ease of reasoning is lost…
(every CLJ program)
- papers that cite oottp
- “releated papers” as determined by google scholar
- Rich’s section on Datomic talks about the paper
- an old talk that i gave about a system built in the spirit of oottp
- some more meanderings around an OO systems with an oottp bent, plus a little bit about removing the accidental but useful bits and still having a system that runs correctly – i.e.
select-rule
and the system quiescence function - section 7.2.1 Formal Specification Languages – Paul deGrandis may have something to say about this
- it’s worth exploring the FGCS to see what the multiverse where Prolog won might be like https://en.wikipedia.org/wiki/Fifth_Generation_Computer_Systems
- TODO: are shaders an example of FRP?