Abstract
This paper forms the notes of a two-hours lecture introducing Object-Oriented Functional Programming with Lisp as a support language. We start by remembering the key concepts of functional programming, imperative programming and object-oriented programming. We continue with a discussion of object-orientedness in Lisp, including Lisp packages, Lisp data structures and CLOS – Common Lisp Object System. We then remind the alternate approach, of functional paradigm in C++. A suggestion for a lab session follows.
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
Pitman, K.M. (ed.): The Common Lisp Hyperspec (1996), http://www.lispworks.com/reference/HyperSpec/Front/index.htm
Steele Jr., G.L.: Common Lisp the Language, 2nd edn. (1990), http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/clm.html
Levine, N.: Fundamentals of CLOS. International Lisp Conference, New York City (2003)
McNamara, B., Smaragdakis, Y.: Functional Programming in C++. In: The 2000 International Conference on Functional Programming, Montreal, Canada, September 18–20 (2000)
McNamara, B., Smaragdakis, Y.: FC++: Functional Programming in C++, http://sourceforge.net/projects/fcpp http://sourceforge.net/projects/fcpp
Bartak, R.: On-line Guide to Constraint Programming, Charles University, Prague, http://ktiml.mff.cuni.cz/bartak/constraints
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Pop, H.F. (2008). A Tutorial on Object-Oriented Functional Programming. In: Horváth, Z., Plasmeijer, R., Soós, A., Zsók, V. (eds) Central European Functional Programming School. CEFP 2007. Lecture Notes in Computer Science, vol 5161. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-88059-2_6
Download citation
DOI: https://doi.org/10.1007/978-3-540-88059-2_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-88058-5
Online ISBN: 978-3-540-88059-2
eBook Packages: Computer ScienceComputer Science (R0)