Preview

Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS)

Advanced search

The concept of inheritance in modern programming languages

https://doi.org/10.15514/ISPRAS-2015-27(6)-12

Abstract

The paper gives a brief overview of existing approaches to inheritance in programming languages and suggests alternative approach to it keeping multiple inheritance as the general mechanism for the software reuse. Approach is based on overloading and overriding with conflicts resolution at call sites based on conformance instead of full validity of the system inheritance graph.

About the Authors

A. . Kanatov
Samsung R&D Institute Russia
Russian Federation


E. . Zouev
Samsung R&D Institute Russia
Russian Federation


References

1. International Standard: ISO/IEC 14882:2011(E) Information technology – Programming Languages – С++

2. J.Gosling, B.Joy, G.Steele, G.Bracha, A.Buckley, The Java Language Specification, 2015-02-13, https://docs.oracle.com/javase/specs/jls/se8/jls8.pdf

3. C# Language Specification, Version 5.0, Microsoft Corporation, https://www.microsoft.com/en-us/download/details.aspx?id=7029

4. Gutknecht J., Romanov V., Zueff E. The Zonnon Project: A .NET Language and Compiler Experiment, in V.Skala, P.Nienaltowski (Eds.) .NET Technologies 2005 Conference Proceedings, May 30 – June 1, 2005, University of West Bohemia, Plzen, Czech Republic, ISBN 80-86943-01-1.

5. International Standard: ISO/IEC 16262:2011(E) Information technology – Programming Languages, their environments and system software interfaces – ECMAScript language specification.

6. The Python Language Reference, https://docs.python.org/3.3/reference/.

7. Martin Odersky, Lex Spoon, and Bill Venners: Programming in Scala, Second Edition, Artima Press, 2010.

8. International Standard: ISO/IEC 8652:2012 Information technology – Programming Languages – Ada.

9. Bertrand Meyer: Object-Oriented Software Construction, Second Edition. Prentice Hall. ISBN 0-13-629155-4.

10. N.Wirth: The Programming Language Oberon, http://www.inf.ethz.ch/personal/ wirth/Oberon/Oberon.Report.pdf

11. The Swift Programming Language Reference: https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/AboutTheLanguageReference.html.

12. The Kotlin Language Reference. http://kotlinlang.org/docs/reference/


Review

For citations:


Kanatov A., Zouev E. The concept of inheritance in modern programming languages. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2015;27(6):169-188. (In Russ.) https://doi.org/10.15514/ISPRAS-2015-27(6)-12



Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)