Subclassing errors, OOP, and practically checkable rules to prevent them

dc.creatorKiselyov, Oleg
dc.date2003-01-28
dc.date.accessioned2026-07-07T03:19:24Z
dc.date.available2026-07-07T03:19:24Z
dc.descriptionThis paper considers an example of Object-Oriented Programming (OOP) leading to subtle errors that break separation of interface and implementations. A comprehensive principle that guards against such errors is undecidable. The paper introduces a set of mechanically verifiable rules that prevent these insidious problems. Although the rules seem restrictive, they are powerful and expressive, as we show on several familiar examples. The rules contradict both the spirit and the letter of the OOP. The present examples as well as available theoretical and experimental results pose a question if OOP is conducive to software development at all.
dc.description10 pages, 1 LaTeX file; accompanying C++ and Haskell code and compilation instructions
dc.identifierhttps://arxiv.org/abs/cs/0301032
dc.identifierhttp://arxiv.org/abs/cs/0301032
dc.identifierProc. "Monterey Workshop 2001: Engineering Automation for Software Intensive System Integration," sponsored by ONR/AFOSR/ARO/DARPA. June 18-22, 2001, Monterey, CA. -- pp. 33-42
dc.identifier.urihttp://salesiana.dossiersoluciones.com/handle/123456789/31444
dc.subjectProgramming Languages
dc.subjectSoftware Engineering
dc.subjectF.3.3; D.1.5; D.1.1; D.2.3; D.2.4; D.2.11
dc.titleSubclassing errors, OOP, and practically checkable rules to prevent them
dc.typetext

Files

Collections