Higher-Order Processes, Functions, and Sessions: A Monadic Integration
Higher-Order Processes, Functions, and Sessions: A Monadic Integration
复制标题
高阶流程、函数和会话:单子集成
DOI:
--
复制
发表时间:
2013
期刊:
影响因子:
--
通讯作者:
F. Pfenning
中科院分区:
文献类型:
--
作者:
Bernardo Toninho;Luís Caires;F. Pfenning
In prior research we have developed a Curry-Howard interpretation of linear sequent calculus as session-typed processes. In this paper we uniformly integrate this computational interpretation in a functional language via a linear contextual monad that isolates session-based concurrency. Monadic values are open process expressions and are first class objects in the language, thus providing a logical foundation for higher-order session typed processes. We illustrate how the combined use of the monad and recursive types allows us to cleanly write a rich variety of concurrent programs, including higher-order programs that communicate processes. We show the standard metatheoretic result of type preservation, as well as a global progress theorem, which to the best of our knowledge, is new in the higher-order session typed setting.