F Sharp: Rozdiel medzi revíziami

Smazaný obsah Přidaný obsah
Bez shrnutí editace
Bez shrnutí editace
Riadok 15:
== Ciele jazyka a súhrn vlastností ==
F# bol vyvinutý ako varianta ''ML'' s mnohými konštrukciami prevzatými z jazyka ''OCaml''. Narozdiel od mnohých skriptovacích jazykov sa rýchlosťou blíži k C#, (predovšetkým kôli [[Typová kontrola|silnej typovej kontrole]]). Taktiež podporuje mnoho dynamických programovacích techník ako je napríklad [[reflexia (programovanie)|reflexia]]. F# umožňuje prepojenie s ďalšími jazykmi vrátane jednoduchej implementácie [[Domain-specific language|DSL]] a bez problémov spolupracuje so všetkými .NET jazykmi.
 
F# je silne typový jazyk, ktorý však používa implicitné typovanie (dátový typ premennej sa nemusí
špecifikovať explicitne, prekladač ho rozpozná podla priraďovanej hodnoty). Ako jazyk pre .NET
podporuje F# všetky typy z .NET frameworku, ale navyše pridáva niekoľko nemenných typov (zmena
ich hodnoty je možná iba vytvorením novej kópie) zviazaných so špecifickými vlastnosťami
jazyka a používaných predovšetkým pre úlohy funkcionálneho programovania. Týmito typmi sú: ''tuple'',
''record'', ''discriminated union'', ''list'' a ''function''. V tejto súvislosti stojí za zmienku že aj typy .NET sú
v F# štandartne nemeniteľné, opak sa dá dosiahnuť použitím kľúčového slova <code>mutable</code>.
 
<references/>