{"title":"Compositional structures for streaming applications","authors":"K. Chandy, J. Bunn","doi":"10.1145/3288599.3288642","DOIUrl":null,"url":null,"abstract":"This paper describes an ongoing project to develop a Python software package, IoTPy, that helps beginning programmers build modular applications that process streams of data collected from sensors, social media and other sources, and to reason about the correctness of their applications in a compositional fashion. IoTPy helps build streaming applications in four ways: (1) enables the construction of non-terminating applications that continuously process endless streams of data by encapsulating terminating programs; (2) supports computation throughout a network of nodes from sensors at the edges of the network to the cloud and back to actuators at the edge; (3) allows users to separate concerns of the logic of an application from the parallel hardware on which the application runs, and (4) supports proofs and testing of the correct behavior of a composition from the specifications of its components.","PeriodicalId":346177,"journal":{"name":"Proceedings of the 20th International Conference on Distributed Computing and Networking","volume":"23 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-01-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 20th International Conference on Distributed Computing and Networking","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3288599.3288642","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
This paper describes an ongoing project to develop a Python software package, IoTPy, that helps beginning programmers build modular applications that process streams of data collected from sensors, social media and other sources, and to reason about the correctness of their applications in a compositional fashion. IoTPy helps build streaming applications in four ways: (1) enables the construction of non-terminating applications that continuously process endless streams of data by encapsulating terminating programs; (2) supports computation throughout a network of nodes from sensors at the edges of the network to the cloud and back to actuators at the edge; (3) allows users to separate concerns of the logic of an application from the parallel hardware on which the application runs, and (4) supports proofs and testing of the correct behavior of a composition from the specifications of its components.