Abstract
In many universities programming is taught using the current mainstream languages C, C++, C#, or Java. For Universities of Applied Sciences (Fachhochschulen) in Germany this is almost mandatory, as the contents of their curricula are always scrutinized with respect to (immediate) practical applicability. This contribution presents the concepts behind an elective course on ‘Concepts of programming Languages’ in the master’s degree program of the computer science department of the Fachhochschule Rosenheim. The course has been taught over the years, using the programming language Ada as a central subject throughout the course. In spite of the contrast to mainstream languages the use of Ada in this course has received positive feedback from the students and the colleagues and may well be designated as successful.
Keywords
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Tempelmeier, T.: Embedding Practical Real-Time Education in a Computer Science Curriculum. In: Nawrocki, J., Schwarz, J.-J., Zalewski, J. (eds.) Real-Time Systems Education III. Proceedings of the IEEE Workshop, November 21, 1998. Scientific Centre of the Polish Academy of Sciences, IEEE Computer Society, Poznan, Los Alamitos (1999)
Fiore, M.: Concepts in Programming Languages. University of Cambridge (2010), http://www.cl.cam.ac.uk/teaching/1011/ConceptsPL/ (accessed February 15, 2012)
Göers, J.: Programmiersprachenkonzepte. Universität Osnabrück (2010), http://www-lehre.inf.uos.de/psk/1011/ (accessed February 15, 2012)
Klaeren, H.: Konzepte höherer Programmiersprachen. Universität Tübingen (January 24, 2012), http://pu.inf.uni-tuebingen.de/users/klaeren/ko.pdf (accessed February 15, 2012)
Mezini, M.: Concepts of Programming Languages. TU Darmstadt (2011), http://www.stg.tu-darmstadt.de/teaching/courses/ss2011/concepts_of_programming_languages_ss2011/cpl_schedule_2/index.en.jsp (accessed February 15, 2012)
Mitchell, J.: Programming Languages. Stanford University (2008), https://courseware.stanford.edu/pg/courses/214531/cs242-fall-2011 (accessed February 15, 2012)
Zhang, T.: Principles of Programming Languages. Iowa State University (2010), http://www.cs.iastate.edu/~tingz/classes/cs342/Fall2010/ (accessed February 15, 2012)
Ploedereder, E.: Konzepte der Programmiersprachen. Universität Stuttgart, http://www.iste.uni-stuttgart.de/ps/lehre/ueberblick/konzepte-der-programmiersprachen.html (accessed February 15, 2012)
Sieber, K.: Konzepte höherer Programmiersprachen. Universität Siegen (2006), http://www.informatik.uni-siegen.de/sieber/public/2006_SS_KP/Main.html (accessed February 15, 2012)
Zimmermann, W., Picht, R.: Konzepte höherer Programmiersprachen. Universität Halle-Wittenberg, http://swt.informatik.uni-halle.de/lehre/lehrveranstaltungen_im_ws_2010/konzepte_hoeherer_programmierspra/#anchor2361387 (accessed February 15, 2012); To appear: Oldenbourg-Verlag, München (September 2012)
Sebesta, R.W.: Concepts of Programming Languages, 9th edn. Addison-Wesley (2009)
Watt, D.A.: Programming Language Design Concepts. John Wiley & Sons (2004)
McCormick, J.W.: Ada and Software Engineering Education: One Professor’s Experience. In: Session “Ada and Software Engineering Education” at the 13th International Conference on Reliable Software Technologies, Ada-Europe 2008, Venice, Italy, June 16-20 (2008); Ada User Journal 29(3), 203–207 (September 2008)
ETAS Group: ASCET Software Products, http://www.etas.com/en/products/ascet_software_products.php?langS=true& (accessed March 2, 2012)
Eisemann, U.: Guidelines for a Model-based Development Process with Automatic Code Generation. In: Niggemann, O., Giese, H (Hrsg.) Proceedings of the 3rd Workshop on Object-oriented Modeling of Embedded Real-Time Systems (OMER 3). HNI-Verlagsschriftenreihe, Paderborn, Band 191, Heinz Nixdorf Institut, Universität Paderborn (2005)
Blache, G.: Model based development & automatic code generation for safety critical systems with ASCET. In: Ada Deutschland, Workshop Entwicklung Zuverlässiger Software-Systeme, Hochschule Regensburg (Juni 18, 2009), http://www.ada-deutschland.de/sites/default/files/tagungen/ws2009/presentations/006_Blache_GI_Ada2009.pdf (accessed March 2, 2012)
Henricson, M., Nyquist, E.: Programming in C++, Rules and Recommendations. Original translation from Swedish by Joseph Supanich. Ellemtel Telecommunication Systems Laboratories, Sweden, http://www.doc.ic.ac.uk/lab/cplus/c++.rules/ (accessed November 25, 2011)
Ada 95 Quality and Style: Guidelines for Professional Programmers. SPC-94093-CMC. Version 01.00.10. Software Productivity Consortium, Herndon, Virginia (October 1995) www.adaic.org/resources/add_content/docs/95style/95style.pdf (accessed November 25, 2011)
Lindsey, C.H., Van Der Meulen, S.G.: Informal Introduction to Algol 68. North-Holland Publishing Company (1973)
Meyers, S.: More Effective C++: 35 New Ways to Improve Your Programs and Designs. Addison-Wesley (2011); second e-book release
Barnes, J.: Rationale for Ada 2005. John Barnes Informatics, Reading, England (2006), http://www.adaic.org/standards/05rat/Rationale05.pdf (accessed November 25, 2011)
Barnes, J.: Programming in Ada 2005. Addison-Wesley, Harlow (2006)
DO-178B Software Considerations in Airborne Systems and Equipment Certification. RTCA, SC-167, EUROCAE, WG-12, December 1 (1992)
Roßkopf, A., Tempelmeier, T.: Aspects of Flight Control Software - A Software Engineering Point of View. In: 24th IFAC/IFIP Workshop on Real-Time Programming, Schloss Dagstuhl, Saarland, Germany, May 31-June 2. Pergamon, Elsevier Science, Oxford (1999); Also in: Control Engineering Practice 8(6), 675–680 (2000)
Odersky, M.: Scala By Example. Draft. Programming Methods Laboratory, EPFL, Switzerland (May 24, 2011), http://www.scala-lang.org/docu/files/ScalaByExample.pdf (accessed November 25, 2011)
Michl, W. (Hrsg.): Evaluation und Lehrbericht - Empfehlungen für Studiendekane. DiZ - Zentrum für Hochschuldidaktik der bayerischen Fachhochschulen, Workshop of the Bavarian Deans of Studies, November 11-12. ZIEL Verlag, Augsburg (1999) (in German); under presence and approval of a representative of the Bavarian Ministry of Education
Halbwachs, N.: Synchronous programming of reactive systems. Kluwer Academic Pub. (1993)
Halbwachs, N.: A synchronous language at work: the story of Lustre. In: Third ACM and IEEE International Conference on Formal Methods and Models for Co-Design, MEMOCODE 2005, Verona, Italy (2005), http://hal.archives-ouvertes.fr/hal-00190883/fr/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tempelmeier, T. (2012). Teaching ‘Concepts of Programming Languages’ with Ada. In: Brorsson, M., Pinho, L.M. (eds) Reliable Software Technologies – Ada-Europe 2012. Ada-Europe 2012. Lecture Notes in Computer Science, vol 7308. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-30598-6_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-30598-6_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-30597-9
Online ISBN: 978-3-642-30598-6
eBook Packages: Computer ScienceComputer Science (R0)