Hacker News new | ask | show | jobs
by iso-8859-1 3293 days ago
Interfaces are as powerful as modules in ML:

'Interfaces in Idris are similar to Haskell type classes, but with support for named overlapping instances. This means that we can give multiple different interpretations to an interface in different implementations, and in this sense they are similar in power to ML modules (Dreyer 2005). Interfaces in Idris are 1st class, meaning that implementations can be calculated by a function, and thus provide the same power as 1st-class modules in 1ML (Rossberg 2015).'

Quoting from https://www.idris-lang.org/drafts/sms.pdf