One thing I think will eventually come out of linear logic is that in classical linear logic there's no intrinsic division between inputs in outputs. In LL it's the case that implication, which corresponds to functions in programming, is decomposed into a linear implication, which is a pure application, and an exponential which handles copying. But even further than that, in classic linear logic there is a symmetric version of implication called par. A -o B is the same as Not A `par` B.<p>It's this symmetry that intrigues me, because it points to a way of programming beyond functional programming that still maintains its fundamental good properties.
Linear logic is the shit. I’ve been reading up on it and I believe that 21st century will be built on top of linear logic. For example I have a hunch probability doesn’t need to be founded on measure theory, but can be founded on linear logic instead.
How does one control runtime operations with this? Ok compiler/optimizer might have a notion of "fastest execution possible" (which most likely have some local time minimums). But what about latency/bandwidth relationship? What do I do if I need minimal latency possible? Or maximal bandwidth possible?