Легковажна і зверхня критика не сприймається адресатом і задовільняє лише того, хто критикує.
Не описуйте речі як "легкі" або "тривіальні". Цим ви змусите людей почуватись жахливо через важку работу над їхнім прогресом. Люди, що навчаються повільно, водночас є найбільш стараними учнями і це є радше приводом для радощів!
Не описуйте речі як "легкі" або "тривіальні". Люди, що важко працюють над вдосконаленням своїх знань, через такі ремарки будуть почуватись жахливо. Зазвичай повільно навчаються ті, хто водночас є найбільш стараними учнями і це є радше приводом для радощів!
Не треба удаваного здивування. Не зображуйте подив, коли хтось каже, що він чогось не знає. Люди знов таки будуть почуватись жахливо, а ви не досягнете майже нічого окрім різкості.
@ -54,13 +54,12 @@
Ніяких -измів, навіть замаскованих. Расизм, сексизм, гомофобія, трансфобія та інші види упередженності у жодному разі не припускаються.
Ви отримаєте зауваження, якщо ви не займаєтесь відвертим тролінгом, але зважайте на те, що цей канал присвячено виключно тим людям, які вивчают самі або вчать програмуванню на Haskell інших.
Якщо ви не займаєтесь відвертим тролінгом, то на каналі ви можете отримати зауваження. Завжди зважайте на те, що канал створено для людей, які або самотужки вивчають Haskell або вчать програмуванню на ньому інших.
# Що таке Haskell, GHC та Cabal?
Haskell - це мова програмування, яка описується в так званих "доповідях". Остання на сьогодні доповідь була зроблена в 2010 році і доступна [за цим посиланням](http://www.haskell.org/onlinereport/haskell2010/).
Haskell - це мова програмування, специфікація якої знаходиться у документах під назвою "звіт" (англ. report). Останній на сьогодні звіт було зроблено у 2010 році і він доступний [за цим посиланням](http://www.haskell.org/onlinereport/haskell2010/).
# Встановлення Haskell
@ -72,13 +71,13 @@ Haskell - це мова програмування, яка описується
## GHC
[GHC](http://www.haskell.org/ghc/) (Glasgow Haskell Compiler) є найбільш популярним шляхом роботи з мовою Haskell. Це пакет, що включає в себе компілятор, інтерпретатор командного рядка, менеджер пакетів та ще деякі речі.
[GHC](http://www.haskell.org/ghc/) (Glasgow Haskell Compiler) є найбільш популярним інструментом роботи з мовою Haskell. Це пакет, що включає в себе компілятор, інтерпретатор командного рядка, менеджер пакетів та ще деякі речі.
## Cabal
[Cabal](https://www.haskell.org/cabal/download.html) є інструментом з керування проектом та розв'язання залежностей. Завдяки йому ви будете встановлювати проекти, начастіше в їхнє власне ізольоване середовище (так званий сендбокс).
Cabal - це еквівалент Bundler в Ruby, pip в Python, NPM в Node.js, Maven та інших. GHC самостійно займається обслуговуванням пакунків, але Cabal обирає версії для інсталяції.
Cabal - це еквівалент Bundler в Ruby, pip в Python, NPM в Node.js, Maven та інших. GHC самостійно займається обслуговуванням пакунків, але Cabal обирає версії для встановлення.
# Встановлення GHC та Cabal
@ -242,7 +241,7 @@ $ cabal install cabal-install alex happy
# Як мені слід вивчати Haskell?
Основна рекомендація - прочитати лекції та пройти всі вправи та домашні завдання версії Sprint 13 курсу cis194, потім пройти курс NICTA (посилання на обидва курси нижче). Все інше можна вважати додатковим матеріалом, який згадується для того, щоб ви знали, де шукати.
Основна рекомендація - прочитати лекції та пройти всі вправи та домашні завдання версії Spring 13 курсу cis194, потім пройти курс NICTA (посилання на обидва курси нижче). Все інше можна вважати додатковим матеріалом, який згадується для того, щоб ви знали, де шукати.
І GHCJS, і Haste є повноцінною реалізацією Haskell. Під GHCJS будуть працювати більше Haskell проектів, ніж із Haste, але це не дуже впливає на розробку фронтенд-проектів.
І GHCJS, і Haste є повноцінними реалізаціями Haskell. Під GHCJS будуть працювати більше Haskell проектів, ніж із Haste, але це не дуже впливає на розробку фронтенд-проектів.
Purescript - це зовсім не Haskell і тому використовувати код із бекенду напряму не вийде.
GHCJS має найбільший розмір допоміжних бібліотек, необхідних для його работи, який сягає 100Кб (luite працює над цією проблемою).
GHCJS має найбільший розмір допоміжних бібліотек, необхідних для його роботи, який сягає 100Кб (luite працює над цією проблемою).
Haste та PureScript більш-менш однакові.
Інтеграція із інтструментарем JS найкраща в PureScript (використовується gulp/grunt/bower), в той час як у GHCJS та Haste краще працює із інструментами Haskell (Cabal).
@ -720,7 +719,7 @@ Haste та PureScript більш-менш однакові.
- [Lecture notes from a short, three lecture course](http://www.ae-info.org/attach/User/Martin-L%C3%B6f_Per/OtherInformation/article.pdf)
# Залежная типізація
# Залежна типізація
- [Grokking sum types, value constructors, and type constructors](http://bitemyapp.com/posts/2014-04-05-grokking-sums-and-constructors.html).
@ -728,7 +727,7 @@ Haste та PureScript більш-менш однакові.