Design and compilation of an object-oriented macroprogramming language for wireless sensor networksVise andre og tillknytning
2014 (engelsk)Inngår i: Proceedings - Conference on Local Computer Networks, LCN, IEEE Computer Society , 2014, nr November, s. 574-582Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]
Wireless sensor network (WSN) programming is still largely performed by experts in a node-centric way using low-level languages such as C. Although numerous higher-level abstractions exist, each simplifying a specific aspect of distributed programming, real applications often require to combine multiple abstractions into a single program. Using current programming frameworks, this represents a difficult task. In previous work, we therefore defined a conceptual framework that facilitates abstraction composition by defining sound compositional rules among few fundamental abstraction categories. The framework is extensible: programmers can add new abstractions within the boundaries determined by the compositional rules. In this paper we describe the design of a language - called MPL - that instantiates this conceptual framework. To support the extensible nature of the framework, the language is object-oriented, which allows programmers to add new abstractions by inheriting from existing classes that implement predefined interfaces. We modeled the syntax after Java, to make it more palatable to inexperienced embedded programmers. Compared to Java, we modified the language to enable efficient execution on WSN devices. We designed and implemented a compiler that translates MPL language into executable C code, which spares the overhead of a virtual machine. By comparing MPL implementations against functionally-equivalent Contiki/C implementations of several benchmark applications, we determined that the performance overhead of MPL is limited, and yet the programming task is simplified.
sted, utgiver, år, opplag, sider
IEEE Computer Society , 2014. nr November, s. 574-582
Emneord [en]
Compilers, Java, object-oriented languages, wireless sensor networks, Abstracting, Application programs, Benchmarking, Computational linguistics, Computer networks, Computer systems programming, Distributed computer systems, Java programming language, Object oriented programming, Program compilers, Sensor nodes, Benchmark applications, Conceptual frameworks, Current programming, Distributed programming, Higher-level abstraction, Programming tasks, Real applications, C (programming language)
HSV kategori
Identifikatorer
URN: urn:nbn:se:ri:diva-45597DOI: 10.1109/LCNW.2014.6927705Scopus ID: 2-s2.0-84932599752OAI: oai:DiVA.org:ri-45597DiVA, id: diva2:1456778
Konferanse
39th Annual IEEE Conference on Local Computer Networks, LCN 2014, 8 September 2014 through 11 September 2014
Merknad
Conference code: 112575
2020-08-062020-08-062023-05-25bibliografisk kontrollert