Odpověď na příspěvek

Mno... nevim jestli delas dobre s tim cyklem Ondra (19. 1. 2008 - 14:22)
Mno... nevim jestli delas dobre, kdyz se snazis si hrat se striktne funkcionalnim jazykem jako s imperativnim. Ja sem par let cvicil na FI MU Uvod do funkcionalniho programovani a nejvetsi problem vetsiny studentu byl prave v tom, ze se snazili za kazdou cenu napasovat to, co vedeli o programovani (v Pascalu/C/PHP/Delphi/whatever), na Haskell.


Funkcionalni programovani je zvlastni a zajimave prave v tom, ze vyzaduje odlisne premysleni nez imperativni pristup. Takze bacha ;-)). Ne vazne, jestli se ucis tomu rozumet, tak Ti vrele doporucuju vzit si nejaky trivialni problem, treba zobrazit prvnich sto sudych cisel (tri priklady delajici totez):


  • take 100 (filter (even) [1..])

  • take 100 [ x | x <- [1..], even x ] -- intenzionalni seznam [ E | G, P ], kde E je vyraz, G je generator prvku a P je podminka, ktera je filtruje

  • let s = flip take . filter even in s [1..] 100 -- prvni vyraz v eta redukovane forme s let, je tam hromada implicitnich zavorek, ktere sem vynechal, protoze asociativita funguje :)



Pockej, az potkas v Haskellu monady :). A zapomen na cykly... ;).
Předmět:
Jméno:
E-mail:
Napište 11 ve dvojkové soustavě

Text příspěvku: