Portál AbcLinuxu, 7. června 2025 09:52
#takto sa typ odvodzuje lahko: let foo = 5 # odvodi foo : int let bar = "Abc" # odvodi bar : string # ale co toto: # baz by mala mat typ: int -> int let baz = func a -> a + 2
let qux = func a -> a + a # zavolame funkciu s ciselnym parametrom qux 2 # zavolame funkciu zo stringovym parametrom qux "Hahaha"Pri tom poslednom priklade je uz otazka, ci by ta funkcia nemala byt polymorficka, alebo ci sa ma inferovat podla prvej pouzitej hodnoty a pri druhej vyhodit chybu. Viete mi v skratke vysvetlit, alebo odkazat ma na priklad, clanok, ci rovno hotovu kniznicu ako ten Hindley-Milner typovy system funguje? Samozrejme je mi jasne ze v urcitych situaciach automaticke odvodzovanie typov fungovat nebude a vtedy compiler vyhodi chybu a editor "vyzve" programatora, aby tam vlozil typovu anotaciu. Taktiez tam bude kedyword auto, ktorym sa vytvori nova premenna typu dynamic ktora bude moct obsahovat data hociakeho typu. Ale to sem nechcem teraz do toho pliest.
auto x = 12 # premenna typu dynamic
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.