The article bridges between two major paradigms in computation, the functional, at basis computation from input to output, and the interactive, where computation reacts to its environment while underway. Central to any compositional theory of interaction is the dichotomy between a system and its environment. Concurrent games and strategies address the dichotomy in fine detail, very locally, in a distributed fashion, through distinctions between Player moves (events of the system) and Opponent moves (those of the environment). A functional approach has to handle the dichotomy much more ingeniously, through its blunter distinction between input and output. This has led to a variety of functional approaches, specialised to particular interactive demands. Through concurrent games we can more clearly see what separates and connects the differing paradigms, and show how: * to lift functions to strategies; the "Scott order" intrinsic to concurrent games plays a key role in turning functional dependency to causal dependency. * several paradigms of functional programming and logic arise naturally as subcategories of concurrent games, including stable domain theory; nondeterministic dataflow; geometry of interaction; the dialectica interpretation; lenses and optics; and their extensions to containers in dependent lenses and optics. * to transfer enrichments of strategies (such as to probabilistic, quantum or real-number computation) to functional cases.
翻译:本文探讨了计算中的两种主要范式:基于输入-输出的函数式计算范式和同时响应环境的交互式计算范式。交互理论的核心在于系统与其环境之间的二元关系。并发游戏和策略通过 Player 的事件和 Opponent 的事件之间的区别来详细处理这种二元关系。函数式方法需要更加别出心裁地处理这种二元关系,通过其对输入和输出的更为粗略的区分。这已经导致了多种适合特定交互需求的函数式方法的出现。通过并发游戏,我们可以更清晰地看到不同范式之间的区别和联系,并展示了以下内容:*如何将函数扩展为策略;并发游戏中的 “Scott order” 在将函数依赖性转化为因果依赖性方面起着关键作用。* 如何将几种函数式编程和逻辑的范式自然地定位为并发游戏的子类,包括稳定域理论、非确定性数据流、交互几何学、dialectica解读、透镜和视角以及它们对于依赖性透镜和视角的扩展。*如何将策略的扩展(如概率、量子或实数计算)转化为函数式的例子。