The temporal logic of programs
SFCS '77 Proceedings of the 18th Annual Symposium on Foundations of Computer Science
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
Finally tagless, partially evaluated: Tagless staged interpreters for simpler typed languages
Journal of Functional Programming
Model checking DSL-generated c source code
SPIN'12 Proceedings of the 19th international conference on Model Checking Software
Experience report: a do-it-yourself high-assurance compiler
Proceedings of the 17th ACM SIGPLAN international conference on Functional programming
Constructive finite trace analysis with linear temporal logic
TAP'12 Proceedings of the 6th international conference on Tests and Proofs
Hi-index | 0.00 |
One of the main advantages of an EDSL (embedded domain-specific language) is that new abstractions can be coded quickly and easily in the EDSL's host language and are automatically transformed to the basic EDSL primitives. In the context of formal software certification, it is paramount that evidence for the correctness of these abstractions are provided and that the low-level code resulting from the EDSL primitives can be traced to some higher-level artifacts, i.e. some concrete programming abstractions, software requirements etc. We have built an EDSL-based tool-chain for implementing and testing mission critical applications which supports measures to guarantee traceability and provides evidence of correctness of EDSL abstractions. We give an overview of our EDSL approach and practical experiences applying them in the industrial context.