Nyckelbegrepp inom funktionell programmering och programmeringsparadigm.

Här är ett svensk-engelskt lexikon med översättningar av mindre uppenbara begrepp inom Haskell, funktionell programmering och programmeringsparadigm.

Ett problem med terminologin i denna kurs är att matematiken och olika delar av datalogin inte har en gemensam terminologi. Det som kallas för funktion inom matematiken och Haskell har en mycket bredare definition bland C-programmerare och Pythonprogrammerare.  Det som kallas för polymorfism inom Java kallas inom programmeringparadigm för subtyping polymorphism och polymorfi är inom programmeringsparadigmen ett mycket bredare begrepp som innefattar operatoröverlagring (som är ett exempel på ad hoc polymorfi) och generics i java (som är ett exempel på parametrisk polymorfi).

Svensk term Engelsk term Fokus i kursen
abstraktion abstraction Links to an external site. Skippa S-expressions, specifikationer och databaser.
beräkningsmodell model of computation Links to an external site. Fokusera på Turingmaskinen och Lambdakalkyl i period 3.
currying currying Links to an external site.
datatyp data type Links to an external site.
evalueringsstrategi evaluation strategy Links to an external site. Call by... need, reference, sharing, value.
högre ordningens funktion higher-order function Links to an external site. map, foldl, lambda
lambdakalkyl Links to an external site. lambda calculus Links to an external site. abstraktion, applikation, konstant, variabel
lat evaluering lazy evaluation Links to an external site.
listomfattning list comprehension Links to an external site.
mönsterpassning pattern matching Links to an external site.
oföränderlighet immutability Links to an external site. immutable binding, immutable object
polymorfism polymorphism Links to an external site. subtyping, ad hoc, parametric
referenstransparens referential transparency Links to an external site.
rekursion recursion Links to an external site. base case, recursive call, tail recursion
ren funktion pure function Links to an external site.
svansrekursion tail recursion Links to an external site.
Turingmaskin Turing machine Links to an external site.
typsystem  type system Links to an external site. type safety, type checking
von Neumann-arkitekturen von Neumann architecture Links to an external site.
överlagring overloading (metod Links to an external site.) (operator Links to an external site.)
överskuggning method override Links to an external site.

Viktiga paradigm i kursen:

Svenska Engelska
Imperativ programmering Imperative programming Links to an external site.
Strukturerad programmering Structured programming Links to an external site.
Procedurell programmering Procedural programming Links to an external site.
Objektorienterad programmering Object oriented programming Links to an external site.
Generisk programmering Generic programming Links to an external site.
Deklarativ programmering Declarative programming Links to an external site.
Funktionell programering Functional programming Links to an external site.
Logisk programmering Logic programming Links to an external site.
Samtidighet Concurrent programming Links to an external site.
Parallellprogrammering Parallel programming Links to an external site. 

Inet-delen

kommunikationsprotokoll communication protocol Links to an external site.