Ce tip are Y - combinatorul paradoxal ?

From HaskellWiki
Revision as of 18:44, 10 February 2008 by Ha$kell (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.


Intrebarea este daca in lambda calculul tipizat (adica lambda calculul acompaniat cu tipuri) exista UN ANUME tip care sa poata fi atribuit lui Y - combinatorul paradoxal cu ajutorul caruia se exprima recursia. In practica acest lucru este evident dificil. O parte din problema consta in faptul ca la o aplicare x x (citeste: "x aplicat lui x") ar trebui sa fie indeplinite doua conditii:
1) primul x sa aiba tipul a -> b
2) al doilea x sa aiba tipul a
din cauza regulii care spune ca la aplicarea unei expresii (in esenta aplicarea unei functii) tipul ei este t1 -> t2 iar al argumentului este t1. Din nefericire este vorba de acelasi x, ceea ce explica dificultatea de a-l scrie pe Y in lambda calculul cu tipuri.

Teorie: S-a demonstrat ca in lambda calculul pur tipizat nu exista operatori / combinatori de punct fix.


Bibliografie:

Cititi primele paragrafe din prima coloana de la pagina 376 (acesta este numarul tiparit pe pagina) din lucrarea:

Hudak Paul, Conception, Evolution and, Application of Functional Programming Languages ACM Computing Surveys, vol 21, no 3 , Sept 1989 - care ar trebui sa fie disponibila in format pdf aici.



Pagina indexata la indexul Categories:Ro


<= Inapoi la pagina principala Ro/Haskell.

<- Inapoi la inceputul paginii 'Intrebarile incepatorului Ro/Haskell'.