Fork me on GitHub
#clara
<
2018-04-09
>
whilo20:04:12

i have just stumbled over factui and finally realized that clara is like reactive dataflow base programming

whilo20:04:56

i am working on datahike: https://github.com/replikativ/datahike and am wondering how i would stream datoms properly into clients with factui

whilo22:04:35

one idea would be to make clara's memory durable and do a joint database

whilo22:04:24

so a simple approach would realize the web after tomorrow scenario of @tonsky http://tonsky.me/blog/the-web-after-tomorrow/

whilo22:04:33

on a next step one can introduce CRDTs for intermediary result sets. this would allow local and offline edits in p2p fashion, which can occur with a parallel addition of the fact to the main central database that will acknowledge the intermediary result set

whilo22:04:13

the latter is necessary for the facts to be joinable in a synchronized fashion with other parts of the system. that would yield a very good tradeoff for data driven application development in my opinion

whilo22:04:15

i can provide a durable sorted-map with the hitchhiker tree as a fast and transparent building blog: https://github.com/datacrypt-project/hitchhiker-tree

whilo22:04:34

operations can be done in memory and flushed at distinct points in time

whilo22:04:37

just to be clear the hitchhiker-tree is not from me, but david greenberg, but i have ported it to clojurescript with core.async and have used it to make datascript durable in datahike

whilo22:04:18

i guess i would have to implement IPersistentMemory, IMemoryReader and ITransientMemory for durability, right?

whilo22:04:56

i am not sure whether this makes sense in your opinion, would be nice to chat a bit about how do it right