
Tech Talk: Total Swift Programming
CoRecursive: Coding Stories · Adam Bell
Audio is streamed directly from the publisher (traffic.libsyn.com) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.
Show Notes
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. A total program is a program composed of only total functions.
A non-total, or partial function, would be a function that can fail given certain inputs. Such 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. Some, 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. He 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.
Links: