Type-Driven Development in Idris
summary
Idris provides first‑class dependent types and interactive tools (REPL, case‑split, expression search) that drive development: the language types compute values (printf format strings), enforce invariants (vectors with length-indexed zipWith and a transposer that compiles and runs), model stateful APIs via the effects library (door protocol with jam handling), and yield a verified Hangman implementation plus a Space‑Invaders demo; code compiles to C/JavaScript (and a PHP backend) and the live examples run successfully, claiming practical “Pac‑Man complete” usability.
AI-written summary · about
chapters (7)
- 0:00Introduction to Idris
- 4:05Type-driven development
- 6:57Idris language features
- 13:54Type-driven programming demos
- 24:05Advanced vector manipulation
- 30:48State machines and effects
- 40:52Conclusion and resources
related talks
41mType-driven Development of Communicating Systems in Idris
41mPrograms and Proofs — Dependent Typing as a Way to Structure Your Code
40mQuantitative Types in Idris 2
41mFun With Categories
19mColouring Flags with Dafny & Idris
45mTDD, as in Type-Directed Development
20mInteractive Haskell Type Inference Exploration (Extended Abstract)
51mFunctional Programming and Domain Driven Design - a match in Heaven!
