A very good thread, thanks for the pointer. I couldn't stop myself from jumping in 😉 I have been thinking in this space as well for a long time, though contrary to @Andrew F, I am not out to unify the two branches, but to exploit their complementarity. One reason is that I see the two branches as much more fundamental than their manfestation in software. For example, the experiment/theory distinction in science is very similar. Experiment explores the "existing hardware" of nature, whereas theory builds model to reason about nature.