Hodnotenie:
Kniha je vysoko hodnotená ako komplexný úvod do paralelného a súbežného programovania v jazyku Haskell. Je uznávaná pre svoje jasné vysvetlenia a praktické poznatky, vďaka čomu je vhodná pre vývojárov, ktorí si chcú rozšíriť svoje zručnosti v jazyku Haskell. Existujú určité obavy týkajúce sa kvality jej väzby a dostupnosti bezplatného online obsahu.
Výhody:⬤ Komplexný úvod do techník súbežného a paralelného programovania v jazyku Haskell.
⬤ Jasné vysvetlenia od uznávaného autora jazyka Haskell (Simon Marlow).
⬤ Pokrýva rôzne paradigmy a praktické príklady.
⬤ Užitočné pre stredne pokročilých a pokročilých programátorov v jazyku Haskell.
⬤ Čitatelia ocenia zrozumiteľnosť a praktický prístup k materiálu.
⬤ Obsah knihy je k dispozícii zadarmo online, čo umožňuje čitateľom vyskúšať si ho pred kúpou.
⬤ Nie je vhodná ako prvá kniha pre začiatočníkov v jazyku Haskell; vyžadujú sa predchádzajúce znalosti.
⬤ Niektoré výtlačky trpia slabou väzbou a nekvalitnou tlačou.
⬤ Hoci je kniha obsiahla, niektorí čitatelia si všimli, že jej chýbajú explicitné cvičenia na hlbšie pochopenie.
(na základe 22 čitateľských recenzií)
Parallel and Concurrent Programming in Haskell
Ak máte praktické znalosti jazyka Haskell, táto praktická kniha vám ukáže, ako používať mnohé rozhrania API a rámce tohto jazyka na písanie paralelných aj súbežných programov. Dozviete sa, ako paralelizmus využíva viacjadrové procesory na zrýchlenie výpočtovo náročných programov a ako súbežnosť umožňuje písať programy s vláknami pre viacero interakcií.
Autor Simon Marlow vás prevedie týmto procesom s množstvom príkladov kódu, ktoré môžete spustiť, experimentovať s nimi a rozširovať ich. Táto kniha, rozdelená do samostatných častí Parallel a Concurrent Haskell, obsahuje aj cvičenia, ktoré vám pomôžu oboznámiť sa s prezentovanými konceptmi:
⬤ Vyjadriť paralelnosť v jazyku Haskell pomocou monády Eval a stratégií vyhodnocovania.
⬤ Paralelizovať bežný kód Haskellu pomocou monády Par.
⬤ Vytvárať paralelné výpočty založené na poliach pomocou knižnice Repa.
⬤ Používajte knižnicu Accelerate na spúšťanie výpočtov priamo na GPU.
⬤ Pracovať so základnými rozhraniami na písanie súbežného kódu.
⬤ Zostaviť stromy vlákien pre väčšie a zložitejšie programy.
⬤ Učte sa, ako vytvárať vysokorýchlostné súbežné sieťové servery.
⬤ Písať distribuované programy, ktoré bežia na viacerých počítačoch v sieti.