Team
Rules
Plagiarism
Useful resources
Examen 2022
Project
Functional Programming
Resurse
Haskell Environment
Ghid de utilizare Hoogle
Haskell Cheatsheet
Scala Environment
Scala Cheatsheet
Lectures
C01: Haskell Introduction
C03: Higher-order functions
C05: Applications
C07: Algebraic datatypes
C08: Typeclasses
C09: Type constructors
C12: Lazy evaluation
C13: Lazy dynamic programming
C15: Introduction to Scala
C16: Case classes
C17: Generics
C18: Scala Hacks
Labs
Crash-course into Haskell's syntax
L01: Introduction to Haskell
L02: Pattern matching, lists, strings and tuples
L03: Higher-order functions
L04: Working with matrices and images
L05: Abstract datatypes
L06: Classes
L07: Functors, Foldables
L08: Lazy evaluation
L09: Scala syntax, function definition and higher-order functions
L10: List and Datatypes and Functional data representation
L11: Polymorphism and For expressions in Scala
Logic programming
Lectures
C09: Introduction to Prolog
C10: Clauses, unification, cut, negation
Labs
L10: Introduction to prolog
L11: Prolog programming
L11 (under revision): Writing generative predicates
L12 (under revision): Programming with cuts and not
(under revision) L10: Prolog: Cuts
(under revision) L11: Prolog: Logic problems