UIN1058 Functional programming (Lisp)

Faculty of Philosophy and Science in Opava
Winter 2021
Extent and Intensity
0/2/0. 3 credit(s). Type of Completion: z (credit).
Teacher(s)
Ing. Jiří Blahuta, Ph.D. (seminar tutor)
Guaranteed by
doc. RNDr. Lucie Ciencialová, Ph.D.
Institute of Computer Science – Faculty of Philosophy and Science in Opava
Timetable of Seminar Groups
UIN1058/A: Thu 13:55–15:30 PED2, J. Blahuta
Prerequisites
( UIAI206 Algorithms and Programming II || UIBUC05 Algorithms and programming II || UIKKB13 Algorithms and Programming II || UIKSB20 Algorithms and programming II || UINK103 Algorithms and Programming II || UINK113 Algorithms and Programming II || UIN1003 Algorithms and Programming II ) && TYP_STUDIA(B)
The basic of Logic.
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
Course objectives
History of Lisp and its perspective. Dialects of Lisp, Common Lisp. Basic data types, atoms, lists and their processing. Symbols and functions, principles of functional programming. Using recursion and iteration. Lambda calculus, anonymous functions, higher order functions. Lisp and artificial intelligencet. Macros. Structures and object oriented programming in Lisp.
Syllabus
  • 1. Lisp and its development, present and perspective. Dialects , relatives and descendants of Lisp. Common Lisp as standard , compared with other languages ??. Prescriptive, procedural, object-oriented , modular , logic and functional programming and support for Lisp.
    2. First look at Lisp . Basic data types. Atoms and lists their evaluation. Symbols and links; functions; the principles of functional programming.
    3. Macintosh Common Lisp. Editor, the listener, the inspector and debugger. IDE integration and Lisp. Lisp as a dynamic language.
    4. The second view of Lisp. Lambda calculus in Lisp, anonymous functions, higher order functions, lexical environment. Lisp and artificial intelligence.
    5. A third view of Lisp. Cycle Read-eval-print. Basic data types for the second time. Macros. Optimization program.
    6. Object-oriented programming in Lisp. Classes and instances, multiple inheritance. Generic functions, methods and multimethods. A combination of methods. Metaobject protocol.
Literature
    recommended literature
  • Kalaš, Ivan. Iné programovanie : stretnutie s jazykom lisp. Bratislava, 1991. ISBN 80-05-00866-X. info
  • WINSTON, P. H. , HORN, B. K. P. LISP. Reading (Mass.): Addison-Wesley, 1989. ISBN 978-0201083194. info
Teaching methods
Interactive lecture
Lecture with a video analysis
Assessment methods
Credit
Language of instruction
Czech
Further comments (probably available only in Czech)
The course can also be completed outside the examination period.
Teacher's information
Obtaining more than 50% of the points from elaborated tasks that are assigned during the semester.
The course is also listed under the following terms Winter 1993, Winter 1994, Winter 1995, Winter 1996, Winter 1997, Winter 1998, Winter 1999, Winter 2000, Winter 2001, Winter 2002, Winter 2003, Winter 2004, Winter 2005, Winter 2006, Winter 2007, Winter 2008, Winter 2009, Winter 2010, Winter 2011, Winter 2012, Winter 2013, Winter 2014, Winter 2015, Winter 2016, Winter 2017, Winter 2018, Winter 2019, Winter 2020, Winter 2022.
  • Enrolment Statistics (Winter 2021, recent)
  • Permalink: https://is.slu.cz/course/fpf/winter2021/UIN1058