作者
Paulo Borba, Augusto Sampaio, Ana Cavalcanti, Márcio Cornélio
发表日期
2004/8/1
期刊
Science of Computer Programming
卷号
52
期号
1-3
页码范围
53-100
出版商
Elsevier
简介
We present algebraic laws for a language similar to a subset of sequential Java that includes inheritance, recursive classes, dynamic binding, access control, type tests and casts, assignment, but no sharing. These laws are proved sound with respect to a weakest precondition semantics. We also show that they are complete in the sense that they are sufficient to reduce an arbitrary program to a normal form substantially close to an imperative program; the remaining object-oriented constructs could be further eliminated if our language had recursive records. This suggests that our laws are expressive enough to formally derive behaviour preserving program transformations; we illustrate that through the derivation of provably-correct refactorings.
引用总数
200420052006200720082009201020112012201320142015201620172018201920202021202220232024417131088976534554211
学术搜索中的文章
P Borba, A Sampaio, A Cavalcanti, M Cornélio - Science of Computer Programming, 2004