2024 Theses Doctoral
Sparse Synchronous Programming with Temporal Abstractions
For many embedded applications, the timing of a result is as important as its value. However, most programming languages treat timing as a side effect, so they cannot convey temporal behavior without compromising precision, efficiency, or flexibility.
This dissertation presents the Sparse Synchronous Model (SSM), a programming model for building temporal abstractions with high-level languages. SSM is deterministic and defines behavior in terms of logical time, but is more expressive than the synchronous languages it was inspired by. It uses the same abstractions for internal events and external I/O, so the meaning of each program is preserved across different platforms.
The main contributions of this work are the formal semantics of SSM, and SSLANG, a standalone functional programming language that implements SSM and runs on microcontrollers. SSLANG's runtime keeps the software synchronized with the real world, and uses timing-aware hardware peripherals to achieve jitter-free I/O with sub-microsecond precision.
The dissertation also describes two embeddings of SSM in existing languages to show that the model is compatible with conventional programming paradigms. Together, these results illustrate the value of extensible, timing-aware programming abstractions for building reliable real-time systems.
Subjects
Files
- Hui_columbia_0054D_18880.pdf application/pdf 770 KB Download File
More About This Work
- Academic Units
- Computer Science
- Thesis Advisors
- Edwards, Stephen A.
- Degree
- Ph.D., Columbia University
- Published Here
- November 6, 2024