【24h】

Real-Time FRP

机译:实时玻璃钢

获取原文
获取原文并翻译 | 示例

摘要

Functional reactive programming (FRP) is a declarative programming paradigm where the basic notions are continuous, time-varying behaviors and discrete, event-based reactivity. FRP has been used successfully in many reactive programming domains such as animation, robotics, and graphical user interfaces. The success of FRP in these domains encourages us to consider its use in real-time applications, where it is crucial that the cost of running a program be bounded and known before run-time. But previous work on the semantics and implementation of FRP was not explicitly concerned about the issues of cost. In fact, the resource consumption of FRP programs in the current implementation is often hard to predict. As a first step towards addressing these concerns, this paper presents Real-Time FRP (RT-FRP), a statically-typed language where the time and space cost of each execution step for a given program is statically bounded. To take advantage of existing work on languages with bounded resources, we split RT-FRP into two parts: a reactive part that captures the essential ingredients of FRP programs, and a base language part that can be instantiated to any generic programming language that has been shown to be terminating and resource-bounded. This allows us to focus on the issues specific to RT-FRP, namely, two forms of recursion. After presenting the operational explanation of what can go wrong due to the presence of recursion, we show how the typed version of the language is terminating and resource-bounded. Most of our FRP programs are expressible directly in RT-FRP. The rest are expressible via a simple mechanism that integrates RT-FRP with the base language.
机译:函数式反应式编程(FRP)是一种声明式编程范式,其中的基本概念是连续的,随时间变化的行为以及离散的,基于事件的反应性。 FRP已成功用于许多反应式编程领域,例如动画,机器人和图形用户界面。 FRP在这些领域中的成功鼓励我们考虑将其用于实时应用程序,在这种情况下,限制程序的运行成本并在运行时知道它是至关重要的。但是,先前关于FRP的语义和实现的工作并未明确关注成本问题。实际上,当前实施中的FRP程序的资源消耗通常很难预测。作为解决这些问题的第一步,本文介绍了实时FRP(RT-FRP),这是一种静态类型的语言,其中给定程序每个执行步骤的时间和空间成本都是静态限制的。为了利用资源有限的语言的现有工作,我们将RT-FRP分为两部分:反应部分,捕获FRP程序的基本要素;基础语言部分,可以实例化为已被使用的任何通用编程语言。显示为终止且资源有限。这使我们可以专注于RT-FRP特有的问题,即两种形式的递归。在介绍了由于存在递归而可能导致错误的操作说明之后,我们展示了该语言的类型化版本如何终止和资源受限。我们的大多数FRP程序都可以直接在RT-FRP中表达。其余部分可通过将RT-FRP与基本语言集成的简单机制来表达。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号