Affiliation:
1. University of California: San Diego, La Jolla, CA
Abstract
Building distributed systems is particularly difficult because of the asynchronous, heterogeneous, and failure-prone environment where these systemsmust run. Tools for building distributed systems must strike a compromise between reducing programmer effort and increasing system efficiency. We present
Mace
, a C++ language extension and source-to-source compiler that translates a concise but expressive distributed system specification into a C++ implementation. Mace overcomes the limitations of low-level languages by providing a unified framework for networking and event handling, and the limitations of high-level languages by allowing programmers to write program components in a controlled and structured manner in C++. By imposing structure and restrictions on how applications can be written, Mace supports debugging at a higher level, including support for efficient model checking and causal-path debugging. Because Mace programs compile to C++, programmers can use existing C++ tools, including optimizers, profilers, and debuggers to analyze their systems.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference37 articles.
1. Freepastry: an open-source implementation of pastry intended for deployment in the internet. http://freepastry.rice.edu 2006. Freepastry: an open-source implementation of pastry intended for deployment in the internet. http://freepastry.rice.edu 2006.
2. Performance debugging for distributed systems of black boxes
3. Automated protocol implementation with RTAG
4. Introduction to the ISO specification language LOTOS
Cited by
21 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Protocol Conformance with Choreographic PlusCal;Theoretical Aspects of Software Engineering;2023
2. An order-aware dataflow model for parallel Unix pipelines;Proceedings of the ACM on Programming Languages;2021-08-22
3. Semi-automated protocol disambiguation and code generation;Proceedings of the 2021 ACM SIGCOMM 2021 Conference;2021-08-09
4. Tools for disambiguating RFCs;Proceedings of the Applied Networking Research Workshop;2021-07-24
5. PaSh;Proceedings of the Sixteenth European Conference on Computer Systems;2021-04-21