Чтобы добавлять сообщения и комментарии, .

@Macil:
Macil

Ы? Я не понял, а у нас, что, cabal-hell официально ликвидирован с 1.24.0?

@Macil:
Macil

repa-flow (http://hackage.haskell.org/package/repa-flow), очередная stream-библиотека от которой не хочется орать: «Нет! Нет! Только не мой мозг, ебучие пришельцы!!!» Существует уже достаточно давно, в рамках работы над 4-й «репой», правда, слегка потеряла импульс развития.

Пост, главным образом из-за бумажки: Polarized Data Parallel Data Flow benl.ouroborus.net Также, рекомендую обратить внимание на ссылки [1] и [2] оной, это ещё одна стрим-библиотечка в iteratee-стиле, но с блекжеком и шлюхами (линейной логикой Жирара).

@Macil:
Macil

github.com hackage.haskell.org
Очередной комбинаторный парсер для лексического анализа. Токены определяются в виде простых свёрток.

Относительно новый (первый коммит 2016-08-08), поэтому фич у него немного Если чо, эти же ребята пишут repa.

Эх, эту бы тулзу мне бы да год назад... Теперь уже без надобности.

@Macil:
Macil

С ужасом осознал, что соврешенно не умею писать сетевые проги на Х-е. В общем, есть клиент что-то типа недоджсонрпц, который: а) может в произвольный момент послать сообщение серверу; б) в любое произвольное время может получить сообщение от сервера. С тем как увязывать запрос-ответ проблем нет, а вот как это выглядит с точки зрения сокетов и/или ИО-менеджера? Есть ли какой-то идиоматичный пример на Х-е?

@Macil:
Macil

— Девушка, мне пжалста полкило зигохистоморфических препроморфизмов!
— Молодой человек, не выпендривайтесь! Вот вам скрученные функторы[1] и пиздуйте отсюда!

[1] cse.iitk.ac.in

@Macil:
Macil

github.com Статейка Ямамото на тему IO в Х-е. Интересно.

@Macil:
Macil

std::bind(&Class::member, obj, obj_par) Сэр, у меня для вас, нахуй, две плохие новости! Одна — полный пиздец, другая — чуть получше.
И да, это тетст на плюсы-фу, если чо.

@Macil:
Macil

Возникла тут задачка нагенерировать «тестовых» примеров некого формата данных. Чем сейчас модно и молодёжно сношать генеративные грамматики на Х-е?

@Macil:
Macil

Парсер бизона. Может кому-то понадобится github.com

@Macil:
Macil

Вообще-то это статический анализатор C++, но в его составе идёт весьма любопытный GLR парсер elkhound.

@Macil:
Macil

А можно Х-й Cmm преобразовать в Гццшный TREE? Ну, и дальше «по команде»: GIMPLE, RTL, асм. Из главных плюшек — LTO, конечно. Ну, может быть и оптимизаицй каких-нибудь перепадёт.

@Macil:
Macil

*пиздец Натолкнулся на доставляющую фичу бинутилза под PE/COFF. Что GCC, что GHC вставляют что-то типа .ident "Compiler Version" в генерируемые ассемблерные файлы. Для GCC это отключается по -fno-ident, для GHC — хрен знает.
Под ELF никаких проблем: создаётся секция .comment в объектнике, которая: а) не гузится в память; б) с флагом MERGE (дубли схлопываются при линковке). Т.е. в результате в исходном бинарнике получается секция с «подписями» всех компиляторов, когда-либо участвовавших в его создании. Удобно.
Для PE/COFF... Ну, вы поняли... В объектнике создаётся секция .rdata$zzz, которая мало того с флагами ALLOC и LOAD, так ещё дефолтный линк-скрипт аппендит её к .rdata бинарника. В результате, мусор в конце секции .rdata.
И если в 7.10.2 он занимал небольшое количество относительно размера бинарника, то в 7.10.3 со сменой тулчейна ситуация значительно ухудшилась.
Решение:
1. Подвергнуть живительному экстерминатусу секцию .rdata$zzz во всех объекниках и статических библиотеках strip --strip-unneeded --keep-file-symbols -R .rdata$zzz сделает своё дело. Увы, strip обламывается на HsBase из-за громадного размера, поэтому придётся вручную упаковывать/распаковывать.
2. Добавить строчку в линк-скрипт (перед .rdata) DISCARD : {*(rdata$zzz)}
Увы, хрен его знает как это сделать в GHC.
Гугл молчит, так что прошу распространить.
А вообще, эта «фича», мне кажется, может смело номинироваться на премию «Просос года». Даже боязно смотреть как обстоят дела с «официальными» сборками опенсорса под венду.

@Macil:
Macil

Я хренею, дорогая редакция! aosabook.org Архигодное описание архитектуры Варпа.
Э-э-э, он правда так укладывает nginx?

@Macil:
Macil

Я что-то не догоняю... Разве шелл из mingw не эмулирует ANSI-последовательности?
(Хаскель тут при том что достали глюки ansi-terminal под вендой)

@Macil:
Macil

Вадлер аццки отжыгает. Врочем, как обычно. homepages.inf.ed.ac.uk
@qnikst а слабо замутить работу с R по таким же принципам? Это же будет бомба!

@Macil:
Macil

Котаны! Встала тут задача статического анализа PL/SQL. Вернее даже не собственно PL/SQL, а адского «объектно-ориентированного» расширения на котором написана деби^W бизнес-логика одной «широко известной в узких кругах» системы. Так что проприетарные тулзы за сотни нефти малость бесполезны.
Хватился, а на Х-е даже парсера PL/SQL нету. Мож у кого-то возникала потребность? Мож у кого-то есть наработки (хоть какие-то!!!), похрен на кривость и законченность. Ну не с нуля же писать! Со своей сороны обещаю полный гихаб/опенсорс/паблик домейн...
И да, подкиньте плз книжек/бумажек уровня «Статический анализ (похрен чего) для чайников». Можно и не для чайников. На вырост, лол! А то теоретическую часть вопроса представляю себе слабовато...

@Macil:
Macil

Так, на почитать перед сном: fceia.unr.edu.ar

@Macil:
Macil

Ну, всё. Дожили, бля! Первый design pattern для Х-я. Дальше только «Хаскель для чайников». ku-fpg.github.io

@Macil:
Macil

Опять очередной HCAR haskell.org

@Macil:
Macil

Баян, наверное, но я не видел:
blog.sumtypeofway.com
blog.sumtypeofway.com