Типы и код, который не ломается

Типы и код, который не ломается

Talk by Alexey Demedeckiy

Рассказ о том, как сильная типизация помогает программисту избегать ошибок при разработке. А именно

- Возможности фантомных типов
- Раннее обнаружение ошибок
- Юнит-тестирование

This talk was made for CocoaFriday #2 ( https://cocoaheads.org.ua/cocoafriday/2 ) which took place Apr 5, 2019.

Video: https://youtu.be/tl4DW11HWuk

Db84cf61fdada06b63f43f310b68b462?s=128

CocoaHeads Ukraine

April 05, 2019
Tweet

Transcript

  1. 27.
  2. 37.

    struct Event { let status: Status enum Status { case

    unassigned case assigned(User) case accepted(User) } }
  3. 40.
  4. 41.

    total append : Vect n a -> Vect m a

    -> Vect (n + m) a append Nil ys = ys append (x :: xs) ys = x :: append xs ys