• The Forgotten Lecture 14: Adjunctions

  • Lecture 13: Comonads 2023

    Lecture about zippers and cellular automata, comonads, their idea, real-life examples, comonad transformers and codo-notation.

  • Lecture 06: IO 2022

    Lecture about IO monad and whole system, do-notation (+ApplicativeDo, +RebindableSyntax), unsafePerformIO, efficient String representations.

  • Monads, part 1 2022

    Lecture about Monad type class, simple monads (Maybe, Either, List), monad laws, some useful monad functions.

  • Monads, part 2 2022

    Lecture about some advanced monads: Writer, Reader, State, some useful features like typed holes and PartialTypedSignatures, RWS monad, CPS-programming and Cont monad.

  • Lecture 12: Some fun with kinds

    Lecture about kinds, -XDataKinds, free monads etc.

  • Lecture 11: Brand new DSL world

    Lecture about GADT, Data kinds, ...

  • Lecture 09: Concurrency, Exceptions and parallelism

    Lecture about parallel and concurrent paradigms and haskell, difference, parallel monads, MVar, fork and a little about scheduler.

  • Lecture 05: Monads

    Lecture about Monad type class, simple monads (Maybe, Either, List), monad laws, some useful monad functions.

  • Lecture 01: stack build

    Introduction lecture. First steps to start playing with Haskell.

  • Lecture 5.5: Parser combinators. Testing combinators. Cont

    Lecture about parser combinators, their goal. And the same ideas applied to testing combinators (especially in context of property-based testing).

  • Lecture 13: Comonads

    Lecture about Zippers and Cellular automatos, comonads, their idea, real-life examples, comonad transformers and codo-notation.

  • Lecture 11: Template Haskell + Lens

    This lecture introduces Template Haskell and gives idea of lens, why we need them and how they solve problems.

  • Lecture 08: Speeding up Haskell

    Lecture about list concatenation precedence, DList, foldr vs. foldl, normal forms, seq and deepseq, deforestation, stream fusion and pure mutable arrays.

  • Lecture 07: Transformers

    Lecture about monad transformers.

  • Lecture 06: IO

    Lecture about IO monad and whole system, do-notation (+ApplicativeDo, +RebindableSyntax), unsafePerformIO, efficient String representations.

  • Lecture 07: Monads, part 2

    Lecture about some advanced monads: Writer, Reader, State, some useful features like typed holes and PartialTypedSignatures, RWS monad, CPS-programming and Cont monad.

  • Lecture 04: Basic typeclasses: Monoid. Functor. Applicative

    Lecture about Functors, Applicatives, Traversable with its instances, automatic deriving extensions and some type hierarchy proposals.

  • Lecture 05: Monads, part 1

    Lecture about Monad type class, simple monads (Maybe, Either, List), monad laws, some useful monad functions.

  • Lecture 03: Data types

    Lecture about type aliases, algebraic data types, record syntax, type classes and module system .

  • Lecture 02: Basic syntax

    Lecture contains basic haskell syntax constructions such as function definitions, simple keywords, polymorphism, lists with some juice, HOF's, currying, application and composition with comparison to other languages. Also introduces fun laziness.