Course detail

Dynamic Languages

FIT-DJAAcad. year: 2018/2019

In order to implement dynamic, adaptive software systems, programming languages must support reasoning about their own structure, performance, and environment (often called "reflection"). Furthermore, there must be support for dynamic modification of structure and behavior. LISP and Smalltalk are typical examples of dynamic languages. The course deals with object orientation in programming languages, operating systems and database systems, Smalltalk influence upon object oriented technologies. It introduces to pure object oriented dynamic languages and systems Smalltalk and Self, architectures and principles of implementation of Smalltalk-like systems as well as their use in rapid prototyping.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

Learning outcomes of the course unit

Ability to program in pure object oriented languages based on Smalltalk and use their dynamic features.
Understanding general principles of pure object orientation and its applications.

Prerequisites

Not applicable.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

Project.

Course curriculum

Not applicable.

Work placements

Not applicable.

Aims

To introduce to the essence of dynamic languages and their features. To introduce to roots and essence of pure object orientation manifested by dynamic language and system Smalltalk. To introduce to dynamic object oriented systems, their architecture and applications.

Specification of controlled education, way of implementation and compensation for absences

Not applicable.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Not applicable.

Recommended reading

Goldberg, A., Robson, D.: Smalltalk-80: The Language, Addison Wesley, 1989, ISBN 0-201-13688-0
Guzdial, M.: Squeak, Prentice Hall, 2001, ISBN 0-13-028028-3
Janoušek, V.: Dynamické jazyky, WWW, 2006
LaLonde, W., Pugh, J.: Inside Smalltalk, Vol. 1, Prentice Hall, 1990, ISBN: 0134684141

Classification of course in study plans

  • Programme IT-MSC-2 Master's

    branch MBI , 0 year of study, summer semester, elective
    branch MSK , 0 year of study, summer semester, elective
    branch MMM , 0 year of study, summer semester, compulsory-optional
    branch MBS , 0 year of study, summer semester, compulsory-optional
    branch MPV , 0 year of study, summer semester, elective
    branch MIS , 0 year of study, summer semester, compulsory-optional
    branch MIN , 0 year of study, summer semester, elective
    branch MGM , 0 year of study, summer semester, elective

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

  1. Object orientation in programming languages, operating systems and database systems. Smalltalk influence upon object oriented technologies.
  2. Roots of Smalltalk: LISP and Simula 67. Pure object orientation.
  3. Language and system Smalltalk - class-based object orientation.
  4. Language and system Self - classless object orientation.
  5. Persistence in Smalltalk-like systems.
  6. Programming techniques.
  7. Architecture of Smalltalk-like systems.
  8. Principles of implementation of Smalltalk-like systems.
  9. Reflectivity, principles of open implementations.
  10. Distributed programming in Smalltalk-like systems.
  11. Interoperability.
  12. Object-oriented modeling and prototyping, knowledge representation.
  13. Other dynamic languages.

Project

26 hod., compulsory

Teacher / Lecturer

Syllabus

  • Simple application implemented in dynamic language.