A COMPARISON OF OBJECT-ORIENTED PROGRAMMING IN 4 MODEM LANGUAGES

Citation
R. Henderson et B. Zorn, A COMPARISON OF OBJECT-ORIENTED PROGRAMMING IN 4 MODEM LANGUAGES, Software, practice & experience, 24(11), 1994, pp. 1077-1095
Citations number
20
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
ISSN journal
00380644
Volume
24
Issue
11
Year of publication
1994
Pages
1077 - 1095
Database
ISI
SICI code
0038-0644(1994)24:11<1077:ACOOPI>2.0.ZU;2-W
Abstract
Object-oriented programming has become a widely used, important progra mming paradigm that is supported in many different languages. C++ has become the most widely used object-oriented language and many C++ prog rammers are unfamiliar with the different approaches taken by other la nguages in the paradigm. This paper is intended as an introduction to a broad range of ideas in object-oriented programming. Specifically, w e introduce four modern programming languages that support object-orie nted programming (Oberon-2, Modula-3, Sather and Self), and show how a simple application is coded in these languages. While each of these p rogramming languages provide support for inheritance, dynamic dispatch , code reuse, and information hiding, they do so in very different way s and with varying levels of efficiency and simplicity. The use of a s imple example, based on a common programming problem, facilitates our comparison. We have coded the application in all of these languages, i ncluding C++, and we compare the compile times, object code sizes, and run times of the available implementations. Implementations of all th e languages compared and all of the programs we measure are available on the Internet. Ultimately, our goal is to encourage and facilitate p rogrammers in understanding and exploring a variety of object-oriented programming languages.