Course detail
Dynamic Languages
FIT-DJAAcad. year: 2017/2018
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
Number of ECTS credits
Mode of study
Guarantor
Department
Learning outcomes of the course unit
Understanding general principles of pure object orientation and its applications.
Prerequisites
Co-requisites
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
Course curriculum
- Syllabus of lectures:
- Object orientation in programming languages, operating systems and database systems. Smalltalk influence upon object oriented technologies.
- Roots of Smalltalk: LISP and Simula 67. Pure object orientation.
- Language and system Smalltalk - class-based object orientation.
- Language and system Self - classless object orientation.
- Persistence in Smalltalk-like systems.
- Programming techniques.
- Architecture of Smalltalk-like systems.
- Principles of implementation of Smalltalk-like systems.
- Reflectivity, principles of open implementations.
- Distributed programming in Smalltalk-like systems.
- Interoperability.
- Object-oriented modeling and prototyping, knowledge representation.
- Other dynamic languages.
- Smalltalk and its interactive programming environment.
- Self and its interactive programming environment.
- Selected programming techniques.
- Simple application implemented in dynamic language.
Syllabus of computer exercises:
Syllabus - others, projects and individual work of students:
Work placements
Aims
Specification of controlled education, way of implementation and compensation for absences
Recommended optional programme components
Prerequisites and corequisites
Basic literature
Recommended reading
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
Teacher / Lecturer
Syllabus
- Object orientation in programming languages, operating systems and database systems. Smalltalk influence upon object oriented technologies.
- Roots of Smalltalk: LISP and Simula 67. Pure object orientation.
- Language and system Smalltalk - class-based object orientation.
- Language and system Self - classless object orientation.
- Persistence in Smalltalk-like systems.
- Programming techniques.
- Architecture of Smalltalk-like systems.
- Principles of implementation of Smalltalk-like systems.
- Reflectivity, principles of open implementations.
- Distributed programming in Smalltalk-like systems.
- Interoperability.
- Object-oriented modeling and prototyping, knowledge representation.
- Other dynamic languages.
Exercise in computer lab
Teacher / Lecturer
Syllabus
- Smalltalk and its interactive programming environment.
- Self and its interactive programming environment.
- Selected programming techniques.