mirror of
https://github.com/bitemyapp/learnhaskell.git
synced 2024-11-07 15:20:21 +00:00
commit
0fae409228
24
guide-ru.md
24
guide-ru.md
@ -59,8 +59,8 @@ IRC канал `#haskell-beginners` на Freenode.
|
|||||||
Просто почти все «ну, на самом деле» являются показухой, а не поиском правды.
|
Просто почти все «ну, на самом деле» являются показухой, а не поиском правды.
|
||||||
|
|
||||||
Не делайте всю работу за обучающегося.
|
Не делайте всю работу за обучающегося.
|
||||||
Если вы ввидите, что человек работает над проблемой,
|
Если вы видите, что человек работает над проблемой,
|
||||||
вы не должны немедлено выдавать советы или готовые решения.
|
вы не должны немедленно выдавать советы или готовые решения.
|
||||||
Дайте ему поработать и поизучать,
|
Дайте ему поработать и поизучать,
|
||||||
пока он сам не попросит помощи.
|
пока он сам не попросит помощи.
|
||||||
Избегать помех — [одна из основных причин существования #haskell-beginners](http://chrisdone.com/posts/teaching).
|
Избегать помех — [одна из основных причин существования #haskell-beginners](http://chrisdone.com/posts/teaching).
|
||||||
@ -126,7 +126,7 @@ export PATH=$PATH:~/.cabal/bin:/opt/cabal/1.22/bin:/opt/ghc/7.8.4/bin:/opt/happy
|
|||||||
|
|
||||||
### Использование Ubuntu PPA
|
### Использование Ubuntu PPA
|
||||||
|
|
||||||
Если вы не используете стабильный дистрибутив, вы можете повторить все теже шаги,
|
Если вы не используете стабильный дистрибутив, вы можете повторить все те же шаги,
|
||||||
что и для Ubuntu, но вам надо будет выполнить дополнительную команду.
|
что и для Ubuntu, но вам надо будет выполнить дополнительную команду.
|
||||||
Сразу после `sudo add-apt-repository -y ppa:hvr/ghc` выполните:
|
Сразу после `sudo add-apt-repository -y ppa:hvr/ghc` выполните:
|
||||||
|
|
||||||
@ -156,7 +156,7 @@ $ sudo sed -i s/jessie/trusty/g /etc/apt/sources.list.d/hvr-ghc-jessie.list
|
|||||||
|
|
||||||
## Fedora 21
|
## Fedora 21
|
||||||
|
|
||||||
Чтобы уставновить Haskell 7.8.4 из неофициального репо (Fedora 22+ будут содержать его в официальном):
|
Чтобы установить Haskell 7.8.4 из неофициального репо (Fedora 22+ будут содержать его в официальном):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ sudo yum-config-manager --add-repo \
|
$ sudo yum-config-manager --add-repo \
|
||||||
@ -260,7 +260,7 @@ $ cabal install alex happy
|
|||||||
|
|
||||||
Скачайте GHC и Cabal из вашего пакетного менеджера,
|
Скачайте GHC и Cabal из вашего пакетного менеджера,
|
||||||
затем добавьте `~/.cabal/bin` в ваше `$PATH`.
|
затем добавьте `~/.cabal/bin` в ваше `$PATH`.
|
||||||
Поосле этого обновите `cabal` и установите дополнительные инструменты `alex` и `happy`.
|
После этого обновите `cabal` и установите дополнительные инструменты `alex` и `happy`.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ cabal update
|
$ cabal update
|
||||||
@ -299,7 +299,7 @@ $ cabal install cabal-install alex happy
|
|||||||
[Доступен на Github](https://github.com/NICTA/course).
|
[Доступен на Github](https://github.com/NICTA/course).
|
||||||
|
|
||||||
Этот курс укрепит и добавит опыта реализации абстракций,
|
Этот курс укрепит и добавит опыта реализации абстракций,
|
||||||
представленых в курсе cis194.
|
представленных в курсе cis194.
|
||||||
Эта практика *критически важна* для комфортного использования
|
Эта практика *критически важна* для комфортного использования
|
||||||
в дальнейшем таких абстракций как Functor/Applicative/Monad/и т. п. в Haskell.
|
в дальнейшем таких абстракций как Functor/Applicative/Monad/и т. п. в Haskell.
|
||||||
Выполнение cis194 и затем NICTA курсов представляет собой основную рекомендацию моего руководства и того, как научить любого языку Haskell.
|
Выполнение cis194 и затем NICTA курсов представляет собой основную рекомендацию моего руководства и того, как научить любого языку Haskell.
|
||||||
@ -393,7 +393,7 @@ let a = 1 * a -- not guarded, (*) is strict
|
|||||||
Перевод:
|
Перевод:
|
||||||
|
|
||||||
<!-- TODO: I don’t really understand this, so I can’t translate properly -->
|
<!-- TODO: I don’t really understand this, so I can’t translate properly -->
|
||||||
> Интересное замечание: GHC должен скрывать отображение токена статуса поздаи
|
> Интересное замечание: GHC должен скрывать отображение токена статуса
|
||||||
> абстрактного типа IO, потому что токен статуса должен все время быть использован
|
> абстрактного типа IO, потому что токен статуса должен все время быть использован
|
||||||
> линейно (не быть дуплицирован или сброшен), но система типов не может принудительно
|
> линейно (не быть дуплицирован или сброшен), но система типов не может принудительно
|
||||||
> этого делать. Понятно, что другой ленивый подобный Haskell язык, имеет уникальные типы
|
> этого делать. Понятно, что другой ленивый подобный Haskell язык, имеет уникальные типы
|
||||||
@ -543,8 +543,8 @@ Cabal Hell был проблемой для пользователей Haskell
|
|||||||
|
|
||||||
Основанный на песочницах подход, который я советую, поможет избежать проблем с
|
Основанный на песочницах подход, который я советую, поможет избежать проблем с
|
||||||
зависимостями пакетов, но он не совместим со способом, предоставляемым Haskell Platform для
|
зависимостями пакетов, но он не совместим со способом, предоставляемым Haskell Platform для
|
||||||
собраных пакетов. Если вы все еще изучаете Haskell и не понимаете как ghc-pkg и Cabal
|
собранных пакетов. Если вы все еще изучаете Haskell и не понимаете как ghc-pkg и Cabal
|
||||||
работает, *избегайте платформу* и вместо этого используйте инструкции по установке, описаные выше.
|
работает, *избегайте платформу* и вместо этого используйте инструкции по установке, описанные выше.
|
||||||
|
|
||||||
## Stackage
|
## Stackage
|
||||||
|
|
||||||
@ -591,7 +591,7 @@ hackage для поиска по дефолту).
|
|||||||
Другая вещь, о которой надо помнить, это то, что из-за способа, которым `$pkg` параметр
|
Другая вещь, о которой надо помнить, это то, что из-за способа, которым `$pkg` параметр
|
||||||
интерполируется *посредством* cabal, не вами, `html-location` и `content-location`
|
интерполируется *посредством* cabal, не вами, `html-location` и `content-location`
|
||||||
параметры *должны быть в одиночных кавычках* и набираться в оболочке или содержаться в
|
параметры *должны быть в одиночных кавычках* и набираться в оболочке или содержаться в
|
||||||
шелл-скрипте. Они не будут работать в Makefile, потому что haddock будет думать, что они
|
shell-скрипте. Они не будут работать в Makefile, потому что haddock будет думать, что они
|
||||||
являются переменными Make!
|
являются переменными Make!
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@ -670,7 +670,7 @@ GHCJS и Haste интегрируются лучше с инструментам
|
|||||||
|
|
||||||
# Линзы и призмы
|
# Линзы и призмы
|
||||||
|
|
||||||
Как только вы почувствуюте себя комфортно с Haskell, очень рекомендую изучить Lenses
|
Как только вы почувствуете себя комфортно с Haskell, очень рекомендую изучить Lenses
|
||||||
и Prisms, даже лишь в качестве «пользователя». Вам не обязательно нужно понимать лежащую
|
и Prisms, даже лишь в качестве «пользователя». Вам не обязательно нужно понимать лежащую
|
||||||
в основе категорию для того, чтобы они были полезны.
|
в основе категорию для того, чтобы они были полезны.
|
||||||
|
|
||||||
@ -733,7 +733,7 @@ catamorphisms). Знание о том, как реализовать unfold (an
|
|||||||
[Catster’s Guide 2](http://byorgey.wordpress.com/catsters-guide-2/).
|
[Catster’s Guide 2](http://byorgey.wordpress.com/catsters-guide-2/).
|
||||||
|
|
||||||
- [Вики-книга haskell](http://en.wikibooks.org/wiki/Haskell/Category_theory)
|
- [Вики-книга haskell](http://en.wikibooks.org/wiki/Haskell/Category_theory)
|
||||||
содержит неплохие диаграмы.
|
содержит неплохие диаграммы.
|
||||||
|
|
||||||
- [Category Theory](http://www.haskell.org/haskellwiki/Category_theory)
|
- [Category Theory](http://www.haskell.org/haskellwiki/Category_theory)
|
||||||
на haskellwiki, также содержит хорошие ссылки.
|
на haskellwiki, также содержит хорошие ссылки.
|
||||||
|
Loading…
Reference in New Issue
Block a user