Курс на Stepik
Обложка курса «ThCS. Introduction to programming with dependent types in Scala» на Stepik
Бесплатно

ThCS. Introduction to programming with dependent types in Scala ★ 5.000

Открыть на
STEPIK.ORG

Theoretical Computer Science. Introduction to programming with dependent types in Scala

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «ThCS. Introduction to programming with dependent types in Scala»Учеников на курсе 3 073
Сертификаты, выданные на курсе «ThCS. Introduction to programming with dependent types in Scala»Сертификатов выдано 0
Отзывы о курсе «ThCS. Introduction to programming with dependent types in Scala»Отзывов получено 3
Рейтинг курса «ThCS. Introduction to programming with dependent types in Scala»Рейтинг курса 5.000
Уроки в курсе «ThCS. Introduction to programming with dependent types in Scala»Количество уроков 41
Тесты в курсе «ThCS. Introduction to programming with dependent types in Scala»Количество квизов 47
Задачи с кодом в курсе «ThCS. Introduction to programming with dependent types in Scala»Количество задач с кодом 4
Время прохождения курса «ThCS. Introduction to programming with dependent types in Scala»Время прохождения курса —
Обновления курса «ThCS. Introduction to programming with dependent types in Scala»Обновления курса — —
Дата публикации курса «ThCS. Introduction to programming with dependent types in Scala»Дата публикации курса — ———
Последнее обновление курса «ThCS. Introduction to programming with dependent types in Scala»Последнее обновление — ———

Содержание курса

Разделы в курсе «ThCS. Introduction to programming with dependent types in Scala» 2 раздела Уроки в курсе «ThCS. Introduction to programming with dependent types in Scala» 41 урок Тесты в курсе «ThCS. Introduction to programming with dependent types in Scala» 47 тестов Задачи в курсе «ThCS. Introduction to programming with dependent types in Scala» 4 задачи Время прохождения курса «ThCS. Introduction to programming with dependent types in Scala» 12 ч. Последнее обновление курса «ThCS. Introduction to programming with dependent types in Scala» обн. 2 года назад

Theory

17 уроков
1. Installing software ↗
2. Dependent types ↗
3. Path-dependent types ↗
4. Type classes. Simulacrum ↗
5. Product type ↗
6. Co-product type (sum type) ↗
7. Function type ↗
8. Dependent pair type (Σ-type) ↗
9. Dependent function type (Π-type) ↗
10. Empty and unit types ↗
11. Boolean type ↗
12. Type of natural numbers ↗
13. List type ↗
14. Type of fixed-length vectors ↗
15. Identity type. Curry–Howard correspondence ↗
16. Eliminators into dependent types (induction) ↗
17. Type-level programming. Shapeless ↗

Practice

24 урока
1. Boolean type: OR, XOR, isEqual ↗
2. Type of natural numbers. Part 1: triple, predecessor, square ↗
3. Type of natural numbers. Part 2: multiplication, add3 ↗
4. Type of natural numbers. Part 3: exponentiation, factorial ↗
5. Type of natural numbers. Part 4: isZero, isOdd/isEven ↗
6. Type of natural numbers. Part 5: isEqual, isLess/isGreater ↗
7. Type of natural numbers. Part 6: subtract, Fibonacci ↗
8. Product type: half, Fibonacci ↗
9. Dependent function type (Π-type): ifElse ↗
10. List type. Part 1: head, tail, isNil ↗
11. List type. Part 2: last, init, append ↗
12. List type. Part 3: revert, concatenation, take/drop ↗
13. Type family List(A). Part1: map, filter ↗
14. Type family List(A). Part2: foldl/foldr ↗
15. Type family List(A). Part 3: zip, isEqual ↗
16. Type of fixed-length vectors. Part 1: append, concatenation ↗
17. Type of fixed-length vectors. Part 2: addition, scalar product ↗
18. Matrices: transpose ↗
19. Identity type. Part 1: symmetricity, transitivity, mapping ↗
20. Identity type. Part 2: NOT(NOT), AND true/false, de Morgan ↗
21. Identity type. Part 3: AND is commutative, 0 is neutral element ↗
22. Type classes: list as a Monad and binary tree as a Foldable ↗
23. Type-level programming. Part 1: number exponentiation ↗
24. Type-level programming. Part 2: vector concatenation ↗