Creating a Language for Writing Real-Time Applications for the Internet of Things

被引:2
作者
Krook, Robert [1 ]
Hui, John [2 ]
Svensson, Bo Joel [1 ]
Edwards, Stephen A. [2 ]
Claessen, Koen [1 ]
机构
[1] Chalmers Univ Technol, Gothenburg, Sweden
[2] Columbia Univ, New York, NY USA
来源
2022 20TH ACM-IEEE INTERNATIONAL CONFERENCE ON FORMAL METHODS AND MODELS FOR SYSTEM DESIGN (MEMOCODE) | 2022年
基金
瑞典研究理事会; 美国国家卫生研究院;
关键词
Real-time; IoT; Compilers; Embedded Domain Specific Languages; GENERATION;
D O I
10.1109/MEMOCODE57689.2022.9954383
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We describe the development of a new programming language Scoria and its compiler. Scoria is a high-level reactive real-time language based on the sparse synchronous model (SSM), designed to produce time- and power-efficient low-level C code that can run on small IoT devices. While the compiler is not yet in a state where it is meaningful to measure power usage, we carefully profile the timing behaviour and identify bottlenecks that can improve performance. The language and compiler are implemented as an Embedded Domain-Specific Language (EDSL) on top of Haskell.
引用
收藏
页数:20
相关论文
共 25 条
  • [1] SYNCHRONOUS PROGRAMMING WITH EVENTS AND RELATIONS - THE SIGNAL LANGUAGE AND ITS SEMANTICS
    BENVENISTE, A
    LEGUERNIC, P
    JACQUEMOT, C
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 1991, 16 (02) : 103 - 149
  • [2] The synchronous languages 12 years later
    Benveniste, A
    Caspi, P
    Edwards, SA
    Halbwachs, N
    Le Guernic, P
    De Simone, R
    [J]. PROCEEDINGS OF THE IEEE, 2003, 91 (01) : 64 - 83
  • [3] Linear Haskell
    Bernardy, Jean-Philippe
    Boespflug, Mathieu
    Newton, Ryan R.
    Jones, Simon Peyton
    Spiwack, Arnaud
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2018, 2
  • [4] THE ESTEREL SYNCHRONOUS PROGRAMMING LANGUAGE - DESIGN, SEMANTICS, IMPLEMENTATION
    BERRY, G
    GONTHIER, G
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 1992, 19 (02) : 87 - 152
  • [5] Compiler test case generation methods: a survey and assessment
    Boujarwah, AS
    Saleh, K
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 1997, 39 (09) : 617 - 625
  • [6] Carlsson M, 2003, LECT NOTES COMPUT SC, V2895, P339
  • [7] Caspi P., 1987, POPL 87, P178, DOI 10.1145/41625
  • [8] A Survey of Compiler Testing
    Chen, Junjie
    Patra, Jibesh
    Pradel, Michael
    Xiong, Yingfei
    Zhang, Hongyu
    Hao, Dan
    Zhang, Lu
    [J]. ACM COMPUTING SURVEYS, 2020, 53 (01)
  • [9] QuickCheck: A lightweight tool for random testing of Haskell programs
    Claessen, K
    Hughes, J
    [J]. ACM SIGPLAN NOTICES, 2000, 35 (09) : 268 - 279
  • [10] Derler Patricia., 2008, Ptides: A programming model for distributed real-time embedded systems