Sök i programutbudet

Använd sökfunktionen för att leta efter kurser och program i Chalmers utbildningsutbud. Den programplan och utbildningsplan som avser dina studier är i allmänhet från det läsår du började dina studier.

​​​​​​​​​​​​​

Kursplan för

Läsår
DAT121 - Programming paradigms  
 
Kursplanen fastställd 2012-02-18 av programansvarig (eller motsvarande)
Ägare: TKDAT
7,5 Poäng
Betygskala: TH - Fem, Fyra, Tre, Underkänt
Utbildningsnivå: Grundnivå
Huvudområde: Datateknik, Informationsteknik
Institution: 37 - DATA- OCH INFORMATIONSTEKNIK


Undervisningsspråk: Engelska
Sökbar för utbytesstudenter
Blockschema: LA

Modul   Poängfördelning   Tentamensdatum
Lp1 Lp2 Lp3 Lp4 Sommarkurs Ej Lp
0111 Tentamen 7,5 hp Betygskala: TH   7,5 hp   14 Mar 2013 em M,  30 Aug 2013 fm M

I program

TKDAT DATATEKNIK, CIVILINGENJÖR, Årskurs 2 (obligatoriskt valbar)
TKDAT DATATEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
TKITE INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 2 (valbar)
TKITE INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
MPALG COMPUTER SCIENCE - ALGORITHMS, LANGUAGES AND LOGIC, MSC PROGR, Årskurs 1 (valbar)
MPALG COMPUTER SCIENCE - ALGORITHMS, LANGUAGES AND LOGIC, MSC PROGR, Årskurs 2 (valbar)

Examinator:

Forskarassistent  Jean-Philippe Bernardy


Ersätter

DAT120   Programming paradigms

Kursutvärdering:

http://document.chalmers.se/doc/32db90cc-fa6b-420e-8cca-45a96153a67d


Behörighet:

För kurser inom Chalmers utbildningsprogram gäller samma behörighetskrav som till de(t) program kursen ingår i.

Kursspecifika förkunskaper

General programming skills (C, C++, Haskell, or Java). Data structures.

Syfte

This course provides an overview of common programming paradigms, including imperative, object-oriented, logic, and functional programming, and discusses the fundamental concepts underlying the design, definition, and implementation of modern computer languages. Students get practical experience with languages that exemplify a particular paradigm.

Lärandemål (efter fullgjord kurs ska studenten kunna)

** Knowledge and understanding
After completion of the course the student is expected to be able to
- Explain and contrast the principles of different paradigms both conceptually and in terms of particular language features.
- Know the relationship between mainstream programming languages, the features they implement, and the paradigms they support.

** Skills and abilities
After completion of the course the student is expected to be able to
- Write small idiomatic programs in languages that represent different paradigms.
- Read programs written idiomatically in a given paradigm, and translate (encode) them into a language that does not support the paradigm directly.
- Read non-idiomatic programs (that use an encoding), and re-write them in their idiomatic paradigm.

** Judgement and approach
After completion of the course the student is expected to be able to
- Evaluate and apply the styles and strategies that characterize different paradigm and assess their suitability for solving a given problem.
- Recognize the paradigms at the core of programs, regardless of shallow/accidental implementation choices.

Innehåll

This course provides an overview of common programming paradigms, including imperative, object-oriented, logic, concurrent, and functional programming, and discusses the fundamental concepts underlying the design, definition, and implementation of modern computer languages. Students get practical experience with languages that exemplify a particular paradigm.

The course contains:
- an introduction by example to each paradigm;
- theoretical and practical studies of transformations between paradigms. Examples of such transformations include:
- introduction/removal of jumps/loops,
- introduction/removal of recursion/stack,
- introduction/removal of higher order functions/closures
- introduction/removal of processes/continuations,
- introduction/removal of explicit search.

Organisation

The course consists of a series of lectures and theoretical and practical exercises.

Litteratur

See separate literature list.

Examination

The course is examined by a written examination.


Sidansvarig Publicerad: on 24 jan 2018.