FJ Extended Calculus for Multi-Version Class Dynamic Update

张仕,黄林鹏
DOI: https://doi.org/10.3724/sp.j.1001.2008.02562
2008-01-01
Journal of Software
Abstract:Aiming at resolving the problem of type-safety in dynamic updating O-O(object-oriented)software,a simple formal system,MCUFJ(multi-version class dynamic updatable calculus based on FJ(featherweight Java) calculus)calculus,is established with the goal of understanding the underlying foundations of updating classes dynamically.MCUFJ is formulated as an extension of a core calculus for Featherweight Java with an update operator.Multi-Version classes make objects with different versions coexisting.This study also discusses what kind of change is type-safe,such as adding,deleting,modifying methods/fields,or changing methods'/fields' type,and concludes some restrictions on type-safe updating.The paper also proves the results formally.This calculus can be used as a foundation of Java and O-O update.
What problem does this paper attempt to address?