Tech Talk: Total Swift Programming

Published: Feb. 12, 2018, 5 a.m.

Tech Talks are in-depth technical discussions.

In simple terms, a total function is a function that produces a well defined output for all possible inputs. \xa0A total program is a program composed of only total functions. \xa0

A non-total, or partial function, would be a function that can fail given certain inputs. \xa0Such as taking the head of a list, which can fail if giving an empty list and is therefore non-total.

Total programming can be done in any language, however many languages make this easier. \xa0Some, going so far as to require proof of totality.

In this interview Andre Videla discusses how the swift program language encourages programming in a total style. \xa0He also discusses his love of Idris, proof assistants and how his research into haskell, idris and dependant types have made him a better swift programmer.

\xa0

Links:

Total Programming In Swift

\xa0