Syllabus of presentations
Introduction to language Haskell, introduction to functional style of programming.
1. Introduction - Haskell platform, GHCI interpreter, simple recursion, simple functions.
2. Functions - solving more complex problems, basic libraries, introduction to type classes.
3. Lists and user defined data types – basic usage, introduction to list generators, functional way of solving problems
.
Tools for functional programming
4. Tools for project and library management (Stack, Cabal) and development support tools (eg debugger).
5. Testing
Advanced aspects of Haskell programming
6. Programming with actions - theoretical aspects, monads, examples (ST monad).
7. Input and output, handling errors.
Selected Haskell libraries
8. Processing of selected data formats (JSON, XML), input parsing.
9. Parallel programming, networking, web REST api.
10. Using the database.
11. Haskell GUI
Web GUI in ELM language.
12. Elm - basic components.
13. Elm - selected technologies, application of styles.
14. Elm - connection to the backend in language Haskell.
The content of the exercises will be corresponding to the presentations. We assume, that all exercises will be in computer classrooms.
Introduction to language Haskell, introduction to functional style of programming.
1. Introduction - Haskell platform, GHCI interpreter, simple recursion, simple functions.
2. Functions - solving more complex problems, basic libraries, introduction to type classes.
3. Lists and user defined data types – basic usage, introduction to list generators, functional way of solving problems
.
Tools for functional programming
4. Tools for project and library management (Stack, Cabal) and development support tools (eg debugger).
5. Testing
Advanced aspects of Haskell programming
6. Programming with actions - theoretical aspects, monads, examples (ST monad).
7. Input and output, handling errors.
Selected Haskell libraries
8. Processing of selected data formats (JSON, XML), input parsing.
9. Parallel programming, networking, web REST api.
10. Using the database.
11. Haskell GUI
Web GUI in ELM language.
12. Elm - basic components.
13. Elm - selected technologies, application of styles.
14. Elm - connection to the backend in language Haskell.
The content of the exercises will be corresponding to the presentations. We assume, that all exercises will be in computer classrooms.