Syntaxe Haskell funkce

BoneFlute

  • *****
  • 2 155
Re:Syntaxe Haskell funkce
« Odpověď #15 kdy: 11. 07. 2018, 16:04:47 »
Citace od: v kdy 11. 07. 2018, 15:35:56
Citace od: BoneFlute kdy 11. 07. 2018, 15:25:43
na více než jednom argumentu
f (x:xs) (y:ys) = ...
f _ _ = ...

vs.

f = \a b -> case (a, b) of ...

Rozumím. Takže když by to bylo takto?

f = (x:xs) (y:ys) -> ...



mm

Re:Syntaxe Haskell funkce
« Odpověď #16 kdy: 11. 07. 2018, 17:24:19 »
najdi si na wiki co je to Eta redukce
a neco o lambda funkcich

jinak https://wiki.haskell.org/Eta_conversion

takze tve:

f a = a + 1

je plne equivaletni k:

f = (+) 1


v

Re:Syntaxe Haskell funkce
« Odpověď #17 kdy: 11. 07. 2018, 17:46:13 »
Citace od: BoneFlute kdy 11. 07. 2018, 16:04:47
Citace od: v kdy 11. 07. 2018, 15:35:56
Citace od: BoneFlute kdy 11. 07. 2018, 15:25:43
na více než jednom argumentu
f (x:xs) (y:ys) = ...
f _ _ = ...

vs.

f = \a b -> case (a, b) of ...

Rozumím. Takže když by to bylo takto?

f = (x:xs) (y:ys) -> ...

tak bych řekl, že současný stav je mi milejší :D konzistentnost je fajn, ale ergonomie je pro mě víc - a konzistentnost na ni může mít jak pozitivní tak i negativní vliv

BoneFlute

  • *****
  • 2 155
Re:Syntaxe Haskell funkce
« Odpověď #18 kdy: 11. 07. 2018, 19:55:30 »
Citace od: v kdy 11. 07. 2018, 17:46:13
tak bych řekl, že současný stav je mi milejší :D konzistentnost je fajn, ale ergonomie je pro mě víc - a konzistentnost na ni může mít jak pozitivní tak i negativní vliv

V čem vidíš tu ergonomii?

BoneFlute

  • *****
  • 2 155
Re:Syntaxe Haskell funkce
« Odpověď #19 kdy: 11. 07. 2018, 19:56:30 »
Citace od: mm kdy 11. 07. 2018, 17:24:19
najdi si na wiki co je to Eta redukce
a neco o lambda funkcich

jinak https://wiki.haskell.org/Eta_conversion

takze tve:

f a = a + 1

je plne equivaletni k:

f = (+) 1
Ah, znám, ale nedošlo mi. Jasný, díky.


v

Re:Syntaxe Haskell funkce
« Odpověď #20 kdy: 11. 07. 2018, 21:29:37 »
Citace od: BoneFlute kdy 11. 07. 2018, 19:55:30
Citace od: v kdy 11. 07. 2018, 17:46:13
tak bych řekl, že současný stav je mi milejší :D konzistentnost je fajn, ale ergonomie je pro mě víc - a konzistentnost na ni může mít jak pozitivní tak i negativní vliv

V čem vidíš tu ergonomii?
viz tady
Citace od: v kdy 11. 07. 2018, 15:11:49
dále ta syntaxe co jste navrhoval by asi vyžadovala dvojité odsazení v případě pattern matchingu

f =
  \.. ->
    ...
  \... ->
    ...

a vůbec, myslím, že se v tom zbytečně moc vrtáte :)