Matematické Fórum


1. 8. 2026 (L) Fórum bude brzy uzavřeno 😿

Nejste přihlášen(a). Přihlásit

#1 10. 04. 2009 13:57

bojkot
Příspěvky: 69
Reputace:   
 

haskell typy

Ahoj,
nevim si rady jak otypovat (.) fst snd
(.) fst   to je mi jasné (a -> (b,c)) -> a -> b
Ale (.) fst snd mi dělá problémy

mám složit (a -> (b,c)) -> a -> b           a         (a,b) -> b


jak to uddělat?
díky

Offline

 

#2 13. 04. 2009 16:01

Kondr
Veterán
Místo: Linz, Österreich
Příspěvky: 4247
Škola: FI MU 2013
Pozice: Vývojář, JKU
Reputace:   38 
 

Re: haskell typy

Pokud ti jde o výsledek, spusť hugs a napiš
:t výraz
konkrétně :t (.)fst snd vrátí
(a,(b,c)) -> b

Pokud jde o postup, jaksprávně píšeš (.) fst je funkce, která má parametry typů (a->(b,c)) a a, její návratový typ je b.
Když jako první argument dostane snd typu (d,e)->e, musí platit
a->(b,c)=(d,e)->e
proto
a=(d,e)
(b,c)=e
a=(d,(b,c))
Přitom (.) fst snd je funkce, která má parametr typu a a vrací typ b, proto je hledaný typ
a->b, což je z předchozího rovno (d,(b,c))->b.


BRKOS - matematický korespondenční seminář pro střední školy

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson