English

Programming Language Features for Refinement

Programming Languages 2016-06-08 v1 Software Engineering

Abstract

Algorithmic and data refinement are well studied topics that provide a mathematically rigorous approach to gradually introducing details in the implementation of software. Program refinements are performed in the context of some programming language, but mainstream languages lack features for recording the sequence of refinement steps in the program text. To experiment with the combination of refinement, automated verification, and language design, refinement features have been added to the verification-aware programming language Dafny. This paper describes those features and reflects on some initial usage thereof.

Keywords

Cite

@article{arxiv.1606.02022,
  title  = {Programming Language Features for Refinement},
  author = {Jason Koenig and K. Rustan M. Leino},
  journal= {arXiv preprint arXiv:1606.02022},
  year   = {2016}
}

Comments

In Proceedings Refine'15, arXiv:1606.01344

R2 v1 2026-06-22T14:19:16.252Z