Hledat:

Invia.cz Last minute Tunisko Dovolená v Chorvatsku Pojeďte do Egypta Bulharsko Vydělávejte peníze s INVIA.CZ
 

Haskell

Haskell je standardizovaný funkcionální programovací jazyk používající zkrácené vyhodnocování, pojmenovaný na počest logika Haskella Curryho. Byl vytvořen v 80. letech 20. století. Posledním polooficiálním standardem je Haskell 98, který definuje minimální a přenositelnou verzi jazyka využitelnou k výuce nebo jako základ dalších rozšíření. Jazyk se rychle vyvíjí, především díky svým implementacím Hugs a GHC.

Haskell je jazyk dodržující referenční transparentnost. To, zjednodušeně řečeno, znamená, že tentýž (pod)výraz má na jakémkoliv místě v programu stejnou hodnotu. Mezi další výhody tohoto jazyka patří přísné typování proměnných, které programátorovi může usnadnit odhalování chyb v programu. Haskell plně podporuje práci se soubory i standardními vstupy a výstupy, která je ale poměrně složitá kvůli zachování referenční transparentnosti. Jako takový se Haskell hodí hlavně pro algoritmicky náročné úlohy minimalizující interakci s uživatelem.


[editovat] Příklady

Definice funkce faktoriálu:

fac 0 = 1
fac n = n * fac (n - 1)

Jiná definice faktoriálu (používá funkci product ze standardní knihovny Haskellu):

fac n = product [1..n]

Naivní implementace funkce vracející n-tý prvek Fibonacciho posloupnosti:

fib 0 = 0 
fib 1 = 1 
fib n = fib (n - 2) + fib (n - 1)

Elegantní zápis řadícího algoritmu quicksort:

qsort [] = []
qsort (pivot:tail) = 
  qsort left ++ [pivot] ++ qsort right
  where
    left = [y | y <- tail, y < pivot]
    right = [y | y <- tail, y >= pivot]

[editovat] Implementace

Následující implementace zcela (nebo téměř zcela) vyhovují standardu Haskell 98 a jsou distribuovány pod open source licencí.

[editovat] Externí zdroje


Programovací jazyky

ABAP | Ada | AppleScript | AWK | Assembler | C | C++ | C# | COBOL | ColdFusion | Clean | D | Eiffel | Erlang | Flex | Fortran | JADE | Java | JavaScript | Lisp | Lua | Oberon | Object Pascal | Objective-C | Pascal | Pawn | Perl | PHP | Python | REALbasic | REBOL | RPG | Ruby | SQL / PL/SQL | Tcl / Tcl/Tk | Visual Basic / VBScript | VB.NET | Visual FoxPro

Akademické: APL / J | Baltazar | Baltík | Karel | OCaml | Haskell | Scheme | Smalltalk | Logo | MATLAB | Mathematica | ML | Prolog

Ostatní: ALGOL | BASIC | Clipper | Forth | Goedel | Limbo | Miranda | Modula-2 / Modula-3 | MUMPS | PL/1 | Simula 67 | Brainfuck

 
Haskell v jiných jazycích: Български, Deutsch, English, Esperanto, Español, فارسی, Suomi, Français, Galego, עברית, Hrvatski, Magyar, Italiano, 日本語, 한국어, Bahasa Melayu, Nederlands, Polski, Português, Română, Русский, Slovenčina, Slovenščina, Svenska, Türkçe, Українська, 中文
Tento článek je převzat z české wikipedie - otevřené encyklopedie, originální článek naleznete na adrese: „http://cs.wikipedia.org/wiki/Haskell
Stránka byla naposledy upravena v Stránka byla naposledy editována 16. 8. 2008 v 15:51.
Veškerý text je dostupný za podmínek GNU Free Documentation License (Autorské právo pro podrobnosti).
Další služby: Portál | Katalog | Hledej | Zprávy | Počasí | Kurzy | Práce | Slovník | TV | Online hry | Java hry | SMS | Loga a melodie | Chat | Fórum | Kontakt