Could Tierless Languages Reduce IoT Development Grief?

Author:

Lubbers Mart1ORCID,Koopman Pieter1ORCID,Ramsingh Adrian2ORCID,Singer Jeremy2ORCID,Trinder Phil2ORCID

Affiliation:

1. Radboud University, Nijmegen, Netherlands

2. University of Glasgow, Glasgow, United Kingdom

Abstract

Internet of Things (IoT) software is notoriously complex, conventionally comprising multiple tiers. Traditionally an IoT developer must use multiple programming languages and ensure that the components interoperate correctly. A novel alternative is to use a single tierless language with a compiler that generates the code for each component and ensures their correct interoperation. We report a systematic comparative evaluation of two tierless language technologies for IoT stacks: one for resource-rich sensor nodes (Clean with iTask) and one for resource-constrained sensor nodes (Clean with iTask and mTask). The evaluation is based on four implementations of a typical smart campus application: two tierless and two Python-based tiered. (1) We show that tierless languages have the potential to significantly reduce the development effort for IoT systems, requiring 70% less code than the tiered implementations. Careful analysis attributes this code reduction to reduced interoperation (e.g., two embedded domain-specific languages and one paradigm versus seven languages and two paradigms), automatically generated distributed communication, and powerful IoT programming abstractions. (2) We show that tierless languages have the potential to significantly improve the reliability of IoT systems, describing how Clean iTask/mTask maintains type safety, provides higher-order failure management, and simplifies maintainability. (3) We report the first comparison of a tierless IoT codebase for resource-rich sensor nodes with one for resource-constrained sensor nodes. The comparison shows that they have similar code size (within 7%), and functional structure. (4) We present the first comparison of two tierless IoT languages, one for resource-rich sensor nodes and the other for resource-constrained sensor nodes.

Funder

Royal Netherlands Navy, the Radboud-Glasgow Collaboration Fund and UK EPSRC

STARDUST

Publisher

Association for Computing Machinery (ACM)

Subject

Software,Information Systems,Hardware and Architecture,Computer Science Applications,Computer Networks and Communications

Reference84 articles.

1. Peter Achten. 2007. Clean for Haskell98 Programmers—A Quick Reference Guide. Retrieved from http://www.st.cs.ru.nl/papers/2007/CleanHaskellQuickGuide.pdf.

2. Security and Privacy Requirements for the Internet of Things

3. Artem Alimarine and Rinus Plasmeijer. 2002. A generic programming extension for clean. In Implementation of Functional Languages, Thomas Arts and Markus Mohnen (Eds.). Springer, Berlin, 168–185.

4. Kalev Alpernas, Yotam M. Y. Feldman, and Hila Peleg. 2020. The wonderful wizard of LoC: Paying attention to the man behind the curtain of lines-of-code metrics. In Proceedings of the ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!’20). Association for Computing Machinery, New York, NY, 146–156. DOI:10.1145/3426428.3426921

5. Mandla Alphonsa. 2021. A review on IOT technology stack, architecture and its cloud applications in recent trends. In Proceedings of the International Conference on Communications and Cyber-Physical Engineering (ICCCE’20), Amit Kumar and Stefan Mozar (Eds.). Springer Singapore, Singapore, 703–711. DOI:10.1007/978-981-15-7961-5_67

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3