Два года в /fg/. Войти !bnw Сегодня Клубы
Привет, TbI — HRWKA! 1239.0 пользователей не могут ошибаться!
?6941
прекрасное6443
говно5904
говнорашка5512
хуита4710
anime3065
linux2651
music2633
bnw2601
рашка2565
log2354
ололо2166
дунч1821
pic1815
сталирасты1491
украина1439
быдло1437
bnw_ppl1417
дыбр1238
гімно1158

Мюсли считаются ghc-8.0.1, жить можно // бля чуть не обосрался, надо было где-нибудь бинарник статически слинкованный оставить.
#XZQ9MY (1+1) / @l29ah / 3099 дней назад
Новое расширение DuplicateRecordFields, позволяющее использовать в различных типах поля с одинаковыми именами.
#40YKZH (4+2) / @komar / 3099 дней назад
Чо там, xmonad работает с ghc-8.0.1?
#RVXQGA (0) / @l29ah / 3101 день назад

ngx-export — nginx module for sourcing and running haskell code in config files.

#DCIPSO (0+2) / @minoru / 3109 дней назад
#LRVL56 (8) / @l29ah / 3139 дней назад
/tmp/a.hs:2:1: Warning: Tab character
#33TAZE (7) / @l29ah / 3139 дней назад
У меня одного ghc-7.10.3 компилит многократно медленнее чем ghc-7.10.2? // потерял тред на жуйке про это явление
#FGF2J4 (0) / @l29ah / 3146 дней назад
Эй @voker57, там твои комиксы в докладах на конференциях используют https://youtu.be/mlTO510zO78?t=11m33s Так что ты постарайся предоставлять для своих комиксов и официальную английскую версию
#4IMX7N (3+15) / @anonymous / 3148 дней назад

Вы всё ещё не слушаете http://bananasandlenses.net/ ? Вот лалки. // Серьёзно, отличный подкаст, рекомендую.

#FTHQX9 (23) / @minoru / 3156 дней назад
http://www.yesodweb.com/blog/2016/03/why-i-prefer-typeclass-based-libraries — Снойман говорит правильные и очевидные вещи. Что это значит? Что сейчас он выкатит на свет божий что-то очень сложное и оверинженернутое.
#DRG3V5 (0) / @ndtimofeev / 3160 дней назад
> Changelog for cryptonite-0.13 > SECURITY Fix buffer overflow issue in SHA384, copying 16 extra bytes from the SHA512 context to the destination memory pointer leading to memory corruption, segfault.
#XJVIPZ (0+1) / @ndtimofeev / 3162 дня назад
Какими плагинами /ТЫ/ *ПОЛЬЗУЕШЬСЯ* при редактировании исходников на Haskell в vim?
#WT8LS6 (6) / @l29ah / 3173 дня назад
> GHC 7.10.1 takes over 30% longer than 7.8.3 with this simple example, with the program size peaking at 10000 terms during specialization, as opposed to 7.8 which never goes above 400 terms.
#W2GINQ (0) / @ndtimofeev / 3183 дня назад
http://www.haskellforall.com/2016/02/auto-generate-command-line-interface.html — Я люблю тебя, Габриэль! Ты понимаешь что мне нужно. Не то что Кметт или Снойман. // По ссылке охренительнейшая библиотека для разбора аргументов командной строки, в которой парсер строится как тип значения которое получается в ходе разбора. Есть недостатки (отсутствие описания опций, отсутствие дополнительный ключей), но я уже сейчас представляю как их можно поправить. Ну и эта охренительнейшая альтернатива для ничего, то есть для ситуации когда вообще нет времени на разбор аргументов и пусть пока так.
#HTGWOZ (0) / @ndtimofeev / 3183 дня назад
> Хорошему человеку с интересным проектом требуется программист Битрикс. http://thesz.livejournal.com/1471638.html
#C63KD8 (1) / @komar / 3191 день назад

Пишу опердень на attoparsec. Т.к. парсер у нас одновременно и лексер, и собственно парсер, логику приходится перемежать обработкой пробельных символов:

pVarDecl :: Parser VariableDeclaration
pVarDecl = do
  string "var"
  skipWhitespace1 -- пропускаем 1 или больше пробельных символов
  name <- pVarName
  skipWhitespace -- пропускаем 0 или больше пробельных символов
  value <- optional $ do
    string "="
    skipWhitespace
    pExpression
  skipWhitespace
  string ";"

  return $ VariableDeclaration name value

Это утомляет. Появляется закономерное желание «переопределить точку с запятой» и явно указывать только места, где пробельные символы обязательны:

pVarDecl :: Parser VariableDeclaration
pVarDecl = do
  string "var"
  requiredWhitespace
  name <- pVarName
  value <- optional $ do
    string "="
    pExpression
  string ";"

  return $ VariableDeclaration name value

(и потом ещё для полного счастья keyword k = string k >> requiredWhitespace, да).

Удивительно, но сам attoparsec, похоже, ничего для этого не предлагает. Итак, какие у меня варианты?

Можно определить свою монаду. Это, конечно, круто, но придётся лифтить часть Data.Attoparsec. В принципе, это всё же лучше, чем ещё двести раз набрать «skipWhitespace», но все равно грязновато.

Есть ощущение, что можно обернуть парсер в трансформер, для которого определить инстанс Monad, и будет мне счастье. Но я трансформерами никогда не пользовался даже, не говоря уж о написании собственных; возможно, это бред, а не идея.

Есть у вас какие-то соображения на этот счёт?

#ENLYJ7 (42+2) / @minoru / 3195 дней назад
>Are you sick and tired of the ease with which Haskell code flows onto the page? Even the thrill of binding to a C library losing its lustre? Look no further! I present to you a tool restoring the good old days of pointer arithmetic, manual memory management, and hours lost to the debugger Ну наконец то!
#UPR3FH (0) / @l29ah / 3203 дня назад
--
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.