Haskell Brooks Curry

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Haskell Brooks Curry (12. září 1900 Millis, Massachusetts1. září 1982 State College, Pensylvánie) byl americký matematik a logik.

Narodil se v Millis, Massachusetts, rodičům Samuelu Silas Curry a Anně Baright Curry. Od roku 1916 studoval medicínu na Harvard University, ale později přešel na studium matematiky. Po absolvování elektrotechniky se vrátil studovat fyziku na Harvard. Zajímal se o logiku a kombinační logiku, spolupracoval s odborníky, např. Heinrichem Behmannem, Paulem Bernaysem a Davidem Hilbertem.

V roce 1928 se Curry oženil s Marii Virginie Wheatley, žili spolu v Německu, po dokončení disertační práce v roce 1929, se přestěhovali do State College v Pensylvánii, kde Curry přijal místo na Penn State College. Měli spolu dvě děti, Anne Wright Curry (27. července 1930) a Robert Wheatley Curry (06.07.1934). Na Penn State pobýval Curry následujících 37 let. Jeden rok strávil na University of Chicago v letech 1931-32 v rámci národního výzkumu přátelství a jeden rok v 1938-39 u ústavu pro pokročilé studium v Princetonu. Bezprostředně po válce, v letech 1945 až 1946 pracoval na projektu ENIAC. V rámci Fulbrightova stipendia spolupracoval s Robertem Feys v belgické Lovani. Po odchodu z Penn State v roce 1966, Curry přijal místo na univerzitě v Amsterdamu. V roce 1970, po dokončení druhého dílu jeho pojednání o kombinační logice, Curry odešel z univerzity v Amsterdamu a vrátil se do State College v Pensylvánii.

Haskell Curry zemřel dne 1. září 1982 v State College, Pensylvánie.

Těžiště jeho práce bylo dokázat vztahy a souvislosti kombinační logiky s matematikou. Ke konci roku 1933 se dozvěděl o Kleene-Rosser paradoxu z korespondence s John Rosser. Paradox, vyvinutý Rosserova a Stephen Kleene prokázal nesoudržnost řady souvisejících formálních systémů, včetně lambda kalkulu. Curry se v podstatě stal zakladatelem kombinační logiky a vzešel z ní jako základ jeden styl funkcionálního programovacího jazyku. Síla a rozsah kombinační logiky je docela podobný lambda kalkulu Alonza Churche.

Curry také psal a učil o matematické logice obecně, jeho učení v této oblasti vyvrcholilo v roce 1963 publikováním Základů matematické logiky.

Přínos pro programovací jazyky[editovat | editovat zdroj]

Související informace naleznete také v článku Haskell (programovací jazyk).

Po tomto logikovi byl pojmenován významný funkcionální programovací jazyk Haskell.

Haskell Curry popsal a poprvé použil princip, který byl po něm nazván curryfikace (anglicky currying). Jedná se o rozložení libovolné funkce o dvou argumentech na funkci jednoho argumentu vracející funkci druhého argumentu. Výhodnost této funkce je patrná v případě, že první argument je v řadě výpočtů pevný, zatímco druhý argument může nabývat různých hodnot. Zápis této funkce v jazyku Scheme:

 (define curry+
   (lambda (c)
     (lambda (x)
       (+ x c))))

Vyhodnocení této funkce: jedná se o funkci, která bude vracet další funkci jako výsledek své aplikace. Funkce curry+ má pouze jediný argument. Při aplikaci funkce curry+ bude vyhodnoceno její tělo, jímž je tento lambda výraz. Jeho vyhodnocením vznikne funkce jednoho argumentu, která bude vrácena jako výsledná hodnota aplikace curry+.

V případě aplikace (define f (curry+ 10)) bude na symbol f navázána hodnota vzniklá vyhodnocením (curry+ 10). Při vyhodnocování tohoto výrazu dojde k aplikaci uživatelsky definované funkce curry+ s argumentem 10. Při její aplikaci vznikne prostředí P, jehož předkem bude globální prostředí (protože v něm vznikla curry+) a ve kterém bude na symbol c navázána hodnota 10. V prostředí P bude vyhodnoceno tělo funkce curry+, to jest výraz (lambda (x) (+ x c)). Jeho vyhodnocením vznikne funkce <(x),(+ x c),P>, která je vrácena jako výsledek aplikace curry+. Tím pádem bude po vyhodnocení prvního výrazu na symbol f navázána funkce <(x),(+ x c),P>.

(Přesný popis viz publikace Paradigmata programování 1A (Jan Konečný a Vilém Vychodil, Katedra informatiky Přírodovědecké fakulty UP Olomouc).)

Hlavní publikace[editovat | editovat zdroj]

  • 1930 Grundlagen der kombinatorischen Logik. American Journal of matematiky
  • 1951 Obrysy formalistický filozofii matematiky. Severní Holandsko.
  • 1958 (s Robertem Feys). Kombinační logické I. Severní Holandsko.
  • 1972 (s J. R. Hindley, J. P. Seldin). Kombinační Logic II. Holandsko, 1972.
  • 1979 (1963). Základy matematické logiky. Dover.