Generisk Haskell är en förlängning av Haskell som stöder konstruktion av generiska program. Under utvecklingen av flera applikationer, såsom en XML-redigerare och kompressor, stötte vi på ett antal begränsningar med det befintliga (klassic) Generic Haskell språket, som implementerats av den nuvarande Generic Haskell kompilatorn. I synnerhet blir generiska definitioner oproportionerligt svårare att skriva eftersom deras komplexitet ökar, till exempel när en generisk funktion använder en annan, eftersom rekursion är implicit i generiska definitioner. I det nuvarande genomförandet, skriver sådana funktioner lider bördan av en stor administrativ overhead och är ibland kontra-intuitiv. Dessutom kan avsaknaden av typkontroll i det nuvarande genomförandet göra Generisk Haskell svår att använda. I detta dokument utvecklar vi grunden för beroendestil Generisk Haskell som tar upp ovanstående problem, flytta bördan från programmeraren till kompilatorn. Dessa stiftelser består av ett komplett system för beroende-stil Generisk Haskells kärnspråk och lämpliga minskningsregler. Typsystemet gör det möjligt för programmeraren att skriva generiska funktioner i en mer naturlig stil, ta hand om beroendedetaljer som tidigare var programmerarens ansvar.
Nära relaterat arbete till denna uppsats är ett förslag till DependencyStyle Generisk Haskell REF som tar itu med problemet i Generic Haskell att definiera polytypisk verksamhet som beror på varandra.
Dependency-style generic haskell
{'venue': "ICFP '03", 'journal': None, 'mag_field_of_study': ['Computer Science']}