lunduniversity.lu.se

Third-Cycle Courses

Faculty of Engineering | Lund University

Details for the Course Syllabus for Course FRT130F valid from Spring 2016

Printable view

General
Aim
  • The purpose of the course is to give an understanding of the various programming concepts that underpin both old and modern programming languages. Special attention is given to functional programming and object-oriented programming.
Contents
  • The course is based on Prof. Dan Grossman's on-line course "Programming Languages" and is given in the form of a study circle. The most important concepts in the course are: functional programming (avoiding mutation, exploiting recursion and higher-order functions, closures, anonymous functions); algebraic datatypes and pattern-matching; essential object-oriented programming (late-binding / dynamic dispatch, subtyping vs. subclassing); language support for abstraction, such as modules, abstract types, and dynamic type-creation; syntax vs. semantics; static vs. dynamic typing and type safety; parametric polymorphism / generics; object-oriented extensibility vs. functional extensibility.
Knowledge and Understanding
  • For a passing grade the doctoral student must
  • explain the general and fundamental concepts in modern programming languages, especially with regards to type systems and data interfaces.
    develop a deep understanding of what functional programming and object-oriented programming are.
    master specific language concepts such that they can recognize them in strange guises.
Competences and Skills
  • For a passing grade the doctoral student must
  • develop the pattern recognition skills necessary to learn new programming languages quickly.
    attain reasonable proficiency in the ML, Racket, and Ruby languages, and, as a by-product, become more proficient in languages they already know.
Judgement and Approach
  • For a passing grade the doctoral student must
Types of Instruction
  • Lectures
  • Self-study literature review
  • The course is given in the form of a study circle with eight meetings. Before each meeting, the participants are expected to solve a number of programming problems. The PhD students should also prepare a brief lecture on the most important programming concepts in the material of the week. The reponsibility to produce reference solutions and to grade the handins also rotate among the participants.
Examination Formats
  • Written assignments
  • Seminars given by participants
  • Failed, pass
Admission Requirements
Assumed Prior Knowledge
  • Basic knowledge in a few different programming languages, e.g. Java, C, Python
Selection Criteria
Literature
  •  
  • Video lectures and course material is available on the webpage http://courses.cs.washington.edu/courses/cse341/13sp/
Further Information
Course code
  • FRT130F
Administrative Information
  •  -06-21
  • Rektor Viktor Öwall

All Published Course Occasions for the Course Syllabus

2 course occasions.

Course code ▽ Course Name ▽ Division ▽ Established ▽ Course syllabus valid from ▽ Start Date ▽ End Date ▽ Published ▽
FRT130F Programming Languages and Concepts Automatic Control Spring 2016 2020‑03‑13 (approximate) 2020‑05‑12
FRT130F Programming Languages and Concepts Automatic Control 2019‑09‑24 Spring 2016 2020‑03‑15 (approximate) 2020‑05‑15 2019‑09‑24

Printable view