Abstract
This article presents Proteus, a core calculus that models dynamic software updating, a service for fixing bugs and adding features to a running program. Proteus permits a program's type structure to change dynamically but guarantees the updated program remains type-correct by ensuring a property we call con-freeness. We show how con-freeness can be enforced dynamically, and how it can be approximated via a novel static analysis. This analysis can be used to assess the implications of a program's structure on future updates in order to make update success more predictable. We have implemented Proteus for C, and briefly discuss our implementation which we have tested on several well-known programs.
Original language | English (US) |
---|---|
Article number | 1255455 |
Journal | ACM Transactions on Programming Languages and Systems |
Volume | 29 |
Issue number | 4 |
DOIs | |
State | Published - Aug 1 2007 |
Externally published | Yes |
All Science Journal Classification (ASJC) codes
- Software
Keywords
- Capability
- Dynamic software updating
- Proteus
- Type inference
- Updateability analysis