Idris is a:

Idris’ syntax ostensibly takes from the Haskell-family of languages, with differences here and there. Where possible we will explain the differences.

Idris uses:

Idris is a compiled language, meaning we compile our programs down to an executable from which we can run our programs. A very cool feature of Idris is that it supports multi-language code generation, enabling Idris programs to be ‘compiled’ down to different languages. For example, the Idris compiler can create versions of your program in Chez Scheme, Racket, Javascript, Java, PHP, and Python.

As a language, Idris is relatively simple. The compiler, and other features of the language implementation, however, is rich with functionality. We will not explore all of what Idris has to offer here. Any features required for this course, that are not documented here, will be introduced as required.