Haskell Brooks Curry

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání
Haskell Brooks Curry
HaskellBCurry.jpg
Narození 12. září 1900
Millis
Úmrtí 1. září 1982 (ve věku 81 let)
State College
Alma mater Harvardova univerzita
Zaměstnavatelé Princetonská univerzita
Harvardova univerzita
Pensylvánská státní univerzita
Některá data mohou pocházet z datové položky.

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 kombinatorickou 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 kombinatorické 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 kombinatorické 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 kombinatorické logiky a vzešel z ní jako základ jeden styl funkcionálního programovacího jazyku. Síla a rozsah kombinatorické 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.