The AbU Language: IoT Distributed Programming Made Easy

被引:3
|
作者
Pasqua, Michele [1 ]
Comuzzo, Massimo [2 ]
Miculan, Marino [2 ]
机构
[1] Univ Verona, Dept Comp Sci, I-37134 Verona, Italy
[2] Univ Udine, Dept Math Comp Sci & Phys, I-33100 Udine, Italy
关键词
IoT programming; ECA rules; attribute-based memory updates; distributed systems; edge computing; domain specific language; ECA RULES; VERIFICATION; CALCULUS;
D O I
10.1109/ACCESS.2022.3230287
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Event-driven programming based on Event-Condition-Action (ECA) rules allows users to define complex automation routines in a simple, declarative way; for this reason, in recent years ECA rules have been adopted by the majority of companies in the Internet of Things (IoT) industry as a promising paradigm for implementing ubiquitous and pervasive systems. Unfortunately, programming simplicity comes to a price: most implementations of ECA rules are bound to a strongly centralized communication infrastructure, that poses serious limitations on the application scenarios for the IoT, due to scalability, security and availability issues. To mitigate these issues, recent works introduced abstractions for communication and coordination of ensembles of IoT devices in a decentralized setting, effectively moving the computation towards the edge of the network without sacrificing the programming simplicity prerogative of ECA rules. In particular, Attribute-based memory Updates is a communication model transparently enhancing ECA rules-based systems with an interaction mechanism where communication is similar to broadcast but actual receivers are selected on the spot, by means of predicates (i.e., properties) over devices attributes. In this paper, we introduce AbU-dsl, a Domain Specific Language for the IoT that compiles on top of an implementation of Attribute-based memory Updates. In this way, AbU-dsl provides a practical development interface, based on ECA rules, to effectively program IoT devices in a fully decentralized setting, by exploiting a full-fledged attribute-based interaction model. Thus, programmers can specify interactions between devices in a declarative way, abstracting from details such as devices identity, number, or even their existence, without the need for a central controlling service.
引用
收藏
页码:132763 / 132776
页数:14
相关论文
共 50 条
  • [21] Catala: A Programming Language for the Law
    Merigoux, Denis
    Chataing, Nicolas
    Protzenko, Jonathan
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2021, 5
  • [22] A Simple Differentiable Programming Language
    Abadi, Martin
    Plotkin, Gordon D.
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2020, 4 (POPL):
  • [23] TMI: Tokenomics Made Easy For Web3 Applications
    Liu, Han
    Wang, Xufei
    Wang, Bin
    Zheng, Huixuan
    Liu, Xuchao
    ACM/IEEE 25TH INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, MODELS 2022 COMPANION, 2022, : 71 - 76
  • [24] Distributed Agents Control System, a framework for programming distributed agents
    García-Espallargas, R
    Recatalá, G
    2003 IEEE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN AND CYBERNETICS, VOLS 1-5, CONFERENCE PROCEEDINGS, 2003, : 2563 - 2568
  • [25] AskIt: Unified Programming Interface for Programming with Large Language Models
    Okuda, Katsumi
    Amarasinghe, Saman
    2024 IEEE/ACM INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, CGO, 2024, : 41 - 54
  • [26] A DISTRIBUTED SYSTEM FOR EASY CLIENT ASSOCIATION IN WIRELESS NETWORKS
    Bucicoiu, Mihai
    Serbu, Victor
    Tapus, Nicolae
    UNIVERSITY POLITEHNICA OF BUCHAREST SCIENTIFIC BULLETIN SERIES C-ELECTRICAL ENGINEERING AND COMPUTER SCIENCE, 2015, 77 (02): : 3 - 16
  • [27] A DECLARATIVE ENVIRONMENT FOR DISTRIBUTED-PROGRAMMING
    DIAZ, M
    PIMENTEL, E
    TROYA, JM
    IFIP TRANSACTIONS A-COMPUTER SCIENCE AND TECHNOLOGY, 1992, 12 : 163 - 169
  • [28] DISTRIBUTED-PROGRAMMING WITH SHARED DATA
    BAL, HE
    TANENBAUM, AS
    COMPUTER LANGUAGES, 1991, 16 (02): : 129 - 146
  • [29] Paradigma: A Distributed Framework for Parallel Programming
    Gannouni, Sofien
    Touir, Ameur
    Mathkour, Hassan
    INTERNATIONAL ARAB JOURNAL OF INFORMATION TECHNOLOGY, 2018, 15 (05) : 934 - 943
  • [30] DDFlow: Visualized Declarative Programming for Heterogeneous IoT Networks
    Noor, Joseph
    Tseng, Hsiao-Yun
    Garcia, Luis
    Srivastava, Mani
    PROCEEDINGS OF THE 2019 INTERNATIONAL CONFERENCE ON INTERNET OF THINGS DESIGN AND IMPLEMENTATION (IOTDI '19), 2019, : 172 - 177