Abstract
Object-Gofer is a small, practical extension of the functional programming language Gofer incorporating the following ideas from the object-oriented community: objects and top level classes, subtype and implementation inheritance, method redefinition, late binding and self type specialization. The semantics of Object-Gofer is defined by translation into pure Gofer. Although this restricts the design space, it turns out that using a suitable framework of monads, higher-order polymorphism, and overloading, objects smooth well with functions.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
. R.S. Bird and Ph. Wadler. Introduction to Functional Programming. Prentice Hall International, Hemel Hempstead, 1988.
R. Breu and M. Breu. A methodolgy of inheritance. Software - Concepts andTools, 16, 1995.
T. Budd. An Introduction to Object-Oriented Programing, 2nd. Ed. Addison Wesely Longman, 1997.
D. F. D’Souza and A. C. Wills. Catalysis case study: Graphical editor. URL: http://www.iconcomp.com.
. P. Hudak, S.L. Peyton Jones, and Ph. Wadler (eds.). Report on the programming language Haskell, Version 1.2. ACM SIGPLAN Notices, 27(5), 1992.
J. Hughes and J. Sparud. Haskell++: An object-oriented extension of Haskel. In In Proc. 1995. Workshop on Haskell, 1995.
J. Jeuring and E. Meijer, editors. Advanced Functional Programming. First International Spring School on Advanced Functional Programming Techniques, Bàstad, Sweden, volume 925 of Lecture Notes in Computer Science. Springer-Verlag, 1995.
M.P. Jones. An introduction to Gofer(draft), 1993.
M.P. Jones. Release notes for Gofer 2.30a, 1994. Included as part of the standard Gofer distribution.
M.P. Jones. Functional programming with overloading and higher-order polymorphism. In Jeuring and Meijer [7], pages 97–136.
P. E. Lauer, editor. Functional Programing, Concurrency, Simulation and Automated Reasoning. International Lecture Series 1991-1992, McMaster University, Canada, volume 693 of Lecture Notes in Computer Science. Springer-Verlag, 1993.
X. Leroy. The Objective Caml System, Release 1.03, 1996. Documentation and users s manual.
M. Odersky and Ph. Wadler. Pizza into Java: Translating theory into practice. In Conference Record of POPL’97. 24nd ACM SIGPLAN-SIGACT Symposium on Principles of Programing Languages, 1997.
CH. Prehofer. From inheritance to feature interaction or composing monads. URL: http://www4.informatik.tu-muenchen.de/MITARBEITER/prehofer/.
L. Rapanotti and A. Socorro. Introducing FOOPS. Technical Report PRG-TR 28-92, Oxford Computing Laboratory, November 1992.
B. Rumpe and B. Gruschke. GOS-Ref erenzhandbuch, 1996. Draft.
PH. Wadler. Monads for functional programming. In Jeuring and Meijer [7], pages 24–52.
T. Winkler. Programming in OBJ and Maude. In Lauer [11], pages 24–52.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Schulte, W., Achatz, K. (1997). Functional Object-Oriented Programming with Object-Gofer. In: Jarke, M., Pasedach, K., Pohl, K. (eds) Informatik ’97 Informatik als Innovationsmotor. Informatik aktuell. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-60831-5_75
Download citation
DOI: https://doi.org/10.1007/978-3-642-60831-5_75
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63066-1
Online ISBN: 978-3-642-60831-5
eBook Packages: Springer Book Archive