WEKO3
アイテム
A Functional Reactive Programming Language for Small-Scale Embedded Systems with Recursive Data Types
https://ipsj.ixsq.nii.ac.jp/records/213163
https://ipsj.ixsq.nii.ac.jp/records/213163d70d45ae-fdce-45d2-b16a-6a48c61f9331
名前 / ファイル | ライセンス | アクション |
---|---|---|
![]() |
Copyright (c) 2021 by the Information Processing Society of Japan
|
|
オープンアクセス |
Item type | Trans(1) | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
公開日 | 2021-09-30 | |||||||||||
タイトル | ||||||||||||
タイトル | A Functional Reactive Programming Language for Small-Scale Embedded Systems with Recursive Data Types | |||||||||||
タイトル | ||||||||||||
言語 | en | |||||||||||
タイトル | A Functional Reactive Programming Language for Small-Scale Embedded Systems with Recursive Data Types | |||||||||||
言語 | ||||||||||||
言語 | eng | |||||||||||
キーワード | ||||||||||||
主題Scheme | Other | |||||||||||
主題 | [通常論文] functional reactive programming, embedded systems, type systems | |||||||||||
資源タイプ | ||||||||||||
資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||||||
資源タイプ | journal article | |||||||||||
著者所属 | ||||||||||||
Department of Computer Science, School of Computing, Tokyo Institute of Technology | ||||||||||||
著者所属 | ||||||||||||
Department of Computer Science, School of Computing, Tokyo Institute of Technology | ||||||||||||
著者所属 | ||||||||||||
Department of Computer Science, School of Computing, Tokyo Institute of Technology | ||||||||||||
著者所属(英) | ||||||||||||
en | ||||||||||||
Department of Computer Science, School of Computing, Tokyo Institute of Technology | ||||||||||||
著者所属(英) | ||||||||||||
en | ||||||||||||
Department of Computer Science, School of Computing, Tokyo Institute of Technology | ||||||||||||
著者所属(英) | ||||||||||||
en | ||||||||||||
Department of Computer Science, School of Computing, Tokyo Institute of Technology | ||||||||||||
著者名 |
Akihiko, Yokoyama
× Akihiko, Yokoyama
× Sosuke, Moriguchi
× Takuo, Watanabe
|
|||||||||||
著者名(英) |
Akihiko, Yokoyama
× Akihiko, Yokoyama
× Sosuke, Moriguchi
× Takuo, Watanabe
|
|||||||||||
論文抄録 | ||||||||||||
内容記述タイプ | Other | |||||||||||
内容記述 | We introduce a new type system to Emfrp, a functional reactive programming (FRP) language designed for resource-constrained embedded systems. Functional reactive programming is a programming paradigm that allows concise descriptions of reactive systems such as GUIs by combining time-varying values that express values changing over time. Emfrp is a domain-specific language based on FRP, designed and developed for small-scale embedded systems. Because the language can statically determine the amount of runtime memory and guarantee the termination of reactive actions, a program written in Emfrp can safely continue reactive behaviors in resource-constrained environments. To ensure these properties, Emfrp disallows the use of recursive data types and functions. However, such restrictions often impose unnatural representations of data structures like lists or trees. The declarative characteristic of FRP and these restrictions impel us to write poorly maintainable redundant codes or deter us from writing certain types of programs. In this paper, we propose EmfrpBCT, an extended Emfrp with size-annotated recursive data types, to overcome this problem. The proposed system is more expressive than Emfrp, yet, it retains the aforementioned static properties. After explaining that through examples, we describe the features of EmfrpBCT, formalize the language, present an algorithm for statically computing the runtime memory bounds, and prove its soundness. Moreover, we implemented a compiler from EmfrpBCT to C, measured the translation time, and evaluated runtime overhead. ------------------------------ This is a preprint of an article intended for publication Journal of Information Processing(JIP). This preprint should not be cited. This article should be cited as: Journal of Information Processing Vol.29(2021) (online) ------------------------------ |
|||||||||||
論文抄録(英) | ||||||||||||
内容記述タイプ | Other | |||||||||||
内容記述 | We introduce a new type system to Emfrp, a functional reactive programming (FRP) language designed for resource-constrained embedded systems. Functional reactive programming is a programming paradigm that allows concise descriptions of reactive systems such as GUIs by combining time-varying values that express values changing over time. Emfrp is a domain-specific language based on FRP, designed and developed for small-scale embedded systems. Because the language can statically determine the amount of runtime memory and guarantee the termination of reactive actions, a program written in Emfrp can safely continue reactive behaviors in resource-constrained environments. To ensure these properties, Emfrp disallows the use of recursive data types and functions. However, such restrictions often impose unnatural representations of data structures like lists or trees. The declarative characteristic of FRP and these restrictions impel us to write poorly maintainable redundant codes or deter us from writing certain types of programs. In this paper, we propose EmfrpBCT, an extended Emfrp with size-annotated recursive data types, to overcome this problem. The proposed system is more expressive than Emfrp, yet, it retains the aforementioned static properties. After explaining that through examples, we describe the features of EmfrpBCT, formalize the language, present an algorithm for statically computing the runtime memory bounds, and prove its soundness. Moreover, we implemented a compiler from EmfrpBCT to C, measured the translation time, and evaluated runtime overhead. ------------------------------ This is a preprint of an article intended for publication Journal of Information Processing(JIP). This preprint should not be cited. This article should be cited as: Journal of Information Processing Vol.29(2021) (online) ------------------------------ |
|||||||||||
書誌レコードID | ||||||||||||
収録物識別子タイプ | NCID | |||||||||||
収録物識別子 | AA11464814 | |||||||||||
書誌情報 |
情報処理学会論文誌プログラミング(PRO) 巻 14, 号 4, 発行日 2021-09-30 |
|||||||||||
ISSN | ||||||||||||
収録物識別子タイプ | ISSN | |||||||||||
収録物識別子 | 1882-7802 | |||||||||||
出版者 | ||||||||||||
言語 | ja | |||||||||||
出版者 | 情報処理学会 |