Journal entry for


Back from hiatus for a few days.

I just watched Gilad Bracha’s presentation on Ampleforth, a live-coding/literate programming/notebook/GUI environment. I loved how you could go from GUI element to definition, compose definitions and document any way you like, and how editing definitions is instantly reflected in the environment. What I think is missing is that in the markup elements are referred to by strings, so you have to think about naming objects if you want to refer to them. A graphical environment is the perfect place to avoid this extra mental burden.

Otherwise I’ve been working on understanding how FRP is implemented. I wasn’t able to make sense of all the things going on in Reflex’ implementation, so instead I’m starting from Conal Elliott’s Push-pull functional reactive programming paper. I’m hoping that implementing the Future abstraction using techniques more similar to those of Reflex (graph traversals) is going to work. The reactive library which came out of the push-pull paper never worked properly, and I’m hoping that’s because of the very experimental implementation techniques.

In any case, it would be nice if everything can be defined in terms of Futures; I want to experiment with different advanced uses of FRP and the simpler my implementation is the better. If it’s slower than Reflex that’s not a big deal, anything is better than the semantic functions I’ve been using up until now to experiment.