Programmers working in the functional style often like to avoid writing functions which have any side-effects beyond returning a value. However, when you run a program, you can’t avoid one side-effect – the passing of time. Rather than ignoring this side-effect, “temporal recursion” gains full control of it, by allowing functions to schedule themselves to run with a precise time delay. Of course as this is livecoding, the definition of the function might change in the meantime.. This technique seems to have started life in Impromptu, was implemented in overtone a while ago, and has now reached fluxus, and therefore its visual counterpart scheme bricks. Dave Griffiths has written about this in his blog, and with some generative audio examples which demonstrate “appearance of high level time structures – state changes and shifts into different modes where different patterns of calls lock into sequence”.