Noble, James and Weir, Charles (2024) The Faultless Way of Programming : Principles, Patterns, Practices, and Peculiarities for Verification in Dafny. In: EuroPLoP 2024 Proceedings :. ACM, New York.
EuroPLoP_2024_Faultless_Preprint.pdf - Accepted Version
Available under License Creative Commons Attribution.
Download (900kB)
Abstract
There is one faultless way of programming. It uses computer intelligence to validate computer code: formal verification. Yet for developers this faultless approach has remained alien, incomprehensible, and many miss out on its proven benefits. This set of patterns introduces Dafny to developers. Dafny provides a powerful way to incorporate formal verification into software that is integrated with languages like Java and C#, generating code that is provably free from defects and problems. The patterns range from the Dafny design philosophy to concepts like ghost variables and implementation details such as the use of generative artificial intelligence. By offering an accessible approach to a difficult subject, they support developers in producing faultless code.