NASA NTRS · 20160005629
Spot: A Programming Language for Verified Flight Software
Abstract
The C programming language is widely used for programming space flight software and other safety-critical real time systems. C, however, is far from ideal for this purpose: as is well known, it is both low-level and unsafe. This paper describes Spot, a language derived from C for programming space flight systems. Spot aims to maintain compatibility with existing C code while improving the language and supporting verification with the SPIN model checker. The major features of Spot include actor-based concurrency, distributed state with message passing and transactional updates, and annotations for testing and verification. Spot also supports domain-specific annotations for managing spacecraft state, e.g., communicating telemetry information to the ground. We describe the motivation and design rationale for Spot, give an overview of the design, provide examples of Spot's capabilities, and discuss the current status of the implementation.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Bocchino, Robert L., Jr., Gamble, Edward, Gostelow, Kim P., Some, Raphael R.. 2014-10-18. Spot: A Programming Language for Verified Flight Software. https://ntrs.nasa.gov/citations/20160005629
Cite the original work for its findings. Save a collection to share your selection of sources.