论文标题

在功能反应性编程和参与者之间平稳导航

Smoothly Navigating between Functional Reactive Programming and Actors

论文作者

Webster, N., Servetto, M.

论文摘要

我们正式定义了功能反应性编程,参与者系统和面向对象的编程的优雅多范式统一。这可以使声明性编程形式形式,在保持安全性的同时收获并发力量。 我们使用对象和参考功能来突出显示和驯服势在必行的功能:参考功能跟踪别名和可变性,以及对象功能轨道I/O。正式地,我们的类型系统限制了不纯正代码的范围,影响和相互作用。 - 范围:纯粹的输入的表达方式将以决定性地行为。 - 影响:避免数据率和同步问题。演员表现不确定的唯一途径是根据消息传递命令突变其状态。 - 交互:信号在命令和功能代码之间提供了功能边界,从而防止了不纯正的代码使功能假设无效。

We formally define an elegant multi-paradigm unification of Functional Reactive Programming, Actor Systems, and Object-Oriented Programming. This enables an intuitive form of declarative programming, harvesting the power of concurrency while maintaining safety. We use object and reference capabilities to highlight and tame imperative features: reference capabilities track aliasing and mutability, and object capabilities track I/O. Formally, our type system limits the scope, impact and interactions of impure code. - Scope: Expressions whose input is pure will behave deterministically. - Impact: Data-races and synchronisation issues are avoided. The only way for an actor to behave nondeterministically, is by mutating its state based on message delivery order. - Interactions: Signals provide a functional boundary between imperative and functional code, preventing impure code from invalidating functional assumptions.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源