Idris



Website: idris-lang.org

Proiectat de: Edwin Brady


IDRIS este un limbaj de programare pur funcțional, cu tipuri dependente, evaluare leneșă opțională și caracteristici, cum ar fi un verificator de totalitate.

IDRI-urile pot fi utilizate ca asistent de dovadă, dar este conceput pentru a fi un limbaj de programare cu scop general similar cu Haskell.

Sistemul de tip IDRIS este similar cu cel al AGDA, iar dovezile sunt similare cu CoQ, inclusiv tactici (funcții/proceduri de dovedire a teoremei) prin reflectarea elaboratorului.

În comparație cu AGDA și COQ, IDRIS acordă prioritate gestionării efectelor secundare și a sprijinului pentru limbile specifice domeniului încorporat.

IDRIS se compilează la C (bazându-se pe un colector de gunoi de copiere personalizat folosind algoritmul Cheney) și JavaScript (atât pe Browser- cât și Node.js).

Există generatoare de cod terțe pentru alte platforme, inclusiv Java Virtual Machine (JVM), Common Intermediate Language (CIL) și LLVM.IDRIS este numit după un dragon cântat din programul de televiziune pentru copii din Marea Britanie, Ivor the Engine.