Anatolii
там беда
Anatolii
половину пример не компилится
Anatolii
я читаю главы
Anatolii
и что-то свое делаю
Denis
Я вчера на хакадже сидел, штудировал первоисточник.
Denis
Сказывается эрланговское прошлое :)
Anatolii
сорцы всмысле?
Denis
Не, до туда не добрался. :)
Denis
Только документацию к парсеку
Anatolii
eol с try красивее выглядит eol :: GenParser Char state () eol = (char '\n' <|> (char '\r' >> option '\n' (char '\n'))) >> return ()
Anatolii
но try вроде не советуют использовать
Denis
Она, к слову, неплоха, но не хватает ей вводной статьи что ли...
Anatolii
а какую доку ты читал?
Anatolii
как вводную статью может вот это прочтешь? http://www.cs.uwyo.edu/~jlc/courses/3015/parser_pearl.pdf
Denis
а какую доку ты читал?
https://hackage.haskell.org/package/parsec-3.1.11/docs/Text-ParserCombinators-Parsec-Combinator.html
Anatolii
ну тут я тоже сидел
Anatolii
и согласен про вводую статью
Anatolii
мне еще не нравятся варнинг компилятора про то что тип не выведен
Anatolii
я над parseTBD вывел
Anatolii
но зачем мне этим занимать над всем остальным
Denis
Я, кстати, не смог для остальных функций вывести тип. Эта сволочь меня нехорошими словами обзывать начинала, мол не знает таких типов и вообще, шел бы я куда подальше. Видать, не дорос я еще до дзена :)
Anatolii
причем я даже скрыл функции, а он все равно ругается
Anatolii
если бы тот тип увидел
Anatolii
я в виме вывел плагином его
Anatolii
тоже не смог руками
Anatolii
--tdbfile :: Text.Parsec.Prim.ParsecT [Char] u Data.Functor.Identity.Identity [[Char]] tdbfile = myLine manyTill eof --myLine :: Text.Parsec.Prim.ParsecT [Char] u Data.Functor.Identity.Identity [Char] myLine = anyToken manyTill (eol <|> eof)
Anatolii
вот
Anatolii
я их закментил
Anatolii
потому что там еще на импортить надо ведро всего
Anatolii
для этих типов
Denis
Вот, типы эти же я и через ghci :t вывел. А он меня обозвал.
Anatolii
я через GhcMod ывел
Anatolii
и норм
Denis
То ли типы другие надо указывать, то ли я чего-то не понимаю
Anatolii
а хотя я не импортил
Anatolii
я заимпортил
Anatolii
но пишет что такого найти не может
Denis
Атом,мкстати, вообще не але с хаскелем. Чисто раскрасить код и отредактировать. Репл не пашет, линтер глючит, сборщик падает с ошибкой. Хрень, короче
Anatolii
http://haskelltools.org/
Anatolii
вот надо ждать
Anatolii
можно будет нормально жить
Anatolii
https://commercialhaskell.github.io/intero/
Anatolii
и вот это оч круто выглядит
Anatolii
но не охота на emacs перезжать
Denis
но не охота на emacs перезжать
Ну его в жопу! Еще одно тормозное чудо. Мне в sublimetext удобно и все нравится. Видимо, судьба на нем остаться.
Anatolii
я в виме сижу
Anatolii
и даже не пробовал emacs
Denis
и даже не пробовал emacs
Емакс незаменим, когда с эрлангом работаешь. Альтернатив вменяемых просто нет.
Anatolii
я с эрлангом не работал
Denis
Но как же он меня заебал!
Evgeniy
https://commercialhaskell.github.io/intero/
Надо это на spacemacs прикрутить😊
Anatolii
http://www.haskellforall.com/2014/03/introductions-to-advanced-haskell-topics.html
Anatolii
вот кстати не плохая статейка
Anatolii
для начинающих
Denis
Я даже специально сервер для емакса запускал и постоянно в памяти держал, чтобы он хоть чуточку быстрее запускался и ворочался. Я уж не говорю про тотальную прекомпиляцию всех модулей...
Denis
вот кстати не плохая статейка
Ага, утащил себе в блокнотик. Спасибо
Anatolii
вот эти 20 задачек еще вчера сделал
Anatolii
http://blog.tmorris.net/posts/20-intermediate-haskell-exercises/
Anatolii
крутые:)
Anatolii
с последней помучался чуток
Anatolii
даже не выдержал
Anatolii
пошел пересмотрел на stepic видео про монаду state
Anatolii
вроде понял
Anatolii
но пока не начала ставить _
Anatolii
не разобрался
Anatolii
_ - вообще отличная штука
Denis
В Эрланге без нее никуда :)
Alexander
А как же стандартная библиотека? Code reuse? Ребята, которые над ней горбатились ведь могли это время прожить. Хочу пользоваться плодами их труда
и много задач у тебя где длина списка не вмещается в 64 бита, чтобы по умолчанию платить overhead работы с gmp?
Anatolii
я коненчо с одной стороны могу понять Ивана но реально, сколько раз в реальной жизни ты работал со списками такой длины?
Anatolii
из того, на чем я писал
Anatolii
Java, Go - там длина списков тоже возвращается int
Anatolii
в Go это еще скорее всего будет int64
Anatolii
а в джаве - это даже не лонг
Anatolii
там это будет наверное int32
Alexander
или 32 или в зависимости от архитектуры
Alexander
в haskell в зависимости от архитектуры, на 32 бита - 32, на 64 - 64
Anatolii
в го точно так, а в джаве уже не помню :(
Denis
А в божественной сишечке вообще нет нативного типа для списков :)
Alexander
к слову я уже час жду как посчитается length (1:replicate maxBound 0)