With multi-tier programming languages, programmers can specify the locations of code to run in order to reduce development efforts for the web-based client-server model where programmers write client and server programs separately and test the multiple programs together. The RPC calculus, one of the foundations of those languages by Cooper and Wadler, has the feature of symmetric communication in programmer's writing arbitrarily deep nested client-server interactions. However, the existing research only considers dynamically typed locations. We propose a typed RPC calculus where locations are tracked in type-level. A new located type system paves the way for a theory of RPC calculi for the client-server model. (In the following papers published in SCP2020 and PPDP2021, the typed RPC calculus will be enhanced with polymorphic locations and a type-based slicing compilation.)
翻译:程序员可以用多层编程语言指定要运行的代码位置, 以减少基于网络的客户服务器模型的开发工作, 程序员可以分别撰写客户和服务器程序, 并同时测试多个程序。 由 Cooper 和 Wadler 建立的这些语言基础之一的 RPC 微积分具有程序员写作过程中任意的深巢客户- 服务器互动的对称通信特征。 但是, 现有的研究只考虑动态键入位置。 我们建议了打字的 RPC 微积分, 以类型水平跟踪各个位置。 新的定位类型系统为客户服务器模型的 RPC 微积分理论铺平了道路 。 ( 在SCP2020 和 PPDP2021 出版的以下文件中, 型式RPC 微积分将随着多变种位置和基于类型分类的汇编而得到加强 。 )