
Alexander
06.01.2018
10:09:51
не, не считать, а мемоизировать
compact + intmap например

A64m
06.01.2018
10:10:14
вроде нет
ну, правда, эффект примерно такой же

Google

A64m
06.01.2018
10:14:14
но это только мое предположение, что достаточно большой компакт не копируется как и полагается большим объектам

Alexander
06.01.2018
10:41:46
вот мне тоже кажется
и.е. тогда кладешь объект в компакт и смотришь в интмапе результат по хешу
по адресу, т.е.
но это не точно

A64m
06.01.2018
10:45:07
только надо с дедупликацией в компакт помещать

Alexander
06.01.2018
10:45:49
да

Слава
06.01.2018
11:11:12
Немного оффтопа
Новый роман о постчеловеческом будущем от подающего надежды российского фантаста - "Сложная лепота"

Yuriy
06.01.2018
11:12:27
спам

Слава
06.01.2018
11:13:07
Не спам
Тут много любителей гм... глубокомысленной фантастики

Max
06.01.2018
11:16:10
Наезд ))

Google

Евгений
06.01.2018
11:19:14
Если фантаст не хаскелист и фантастика не про хаскель, то оффтоп и спам

Alister
06.01.2018
11:22:39

Anatolii
06.01.2018
11:39:55
товариши, а есть какие-то либы хорошие чтобы пдф разобрать?
может кто уже сталкивался с такой задачей

Dmitry
06.01.2018
11:41:45
те, которые в хакадже - не очень хорошие?

Anatolii
06.01.2018
11:42:59
я там парочку нашел, просто думал может у кого уже опыт есть какой-то

? animufag ?
06.01.2018
13:15:52
а что обычно пишут в setup.hs?
нормально будет там написать установку побочной программы?

Dmitry
06.01.2018
13:17:25
@anpryl мы их распознаём. своего рода тоже разбор

? animufag ?
06.01.2018
13:18:27
то есть в основном пдф-ки делаются очень недобросовестно
генерятся из чего-либо
и там буквы/слова параграфы заданы относительным позиционированием друг от друга и там всякие матрицы применяются для координат и получается что то как читаешь совсем не так как они представлены внутри
поищи сторонние утилиты чтобы переводить пдф в структурированный формат и если их качество неудовлетворительно а внутри целевая пдф устроена более менее ок, то можно самому попробовать написать

Denis
06.01.2018
13:25:23

? animufag ?
06.01.2018
13:25:47
Кул

Denis
06.01.2018
13:26:56
обычно так называют nix-выражение для открытия шелла с нужным окружением
я так понял что у программы рантайм-зависимость какая-то

? animufag ?
06.01.2018
14:04:14
Ну да да. Просто ты так легко выбрал таргет ос.
Хотя она реально одна

Alexander
06.01.2018
14:12:58
nix на везде кроме видны есть
винды

Google

Ignat
06.01.2018
14:21:00
> linux и macos
> везде кроме винды
well memed

A64m
06.01.2018
14:23:27
в винде есть, но на WSL

Index
06.01.2018
14:25:14
Надеюсь WSL не умрёт.

Dmitry
06.01.2018
15:24:44
слушайте, а вот ролик выше ??в нем какой-то глубокий смысл или это что?
8 секунд непонятно чего. может, его выпилить?

GNU/Maybe
06.01.2018
15:26:00
Выглядит нечаянным

sherzod
06.01.2018
15:26:57
через некоторое время он станет роликом про НЛО

Dmitry
06.01.2018
15:32:03
#freebsd #anime а вот как использовать mumble для войсчата ?

Grigory
06.01.2018
15:38:05

Dmitry
06.01.2018
16:57:47
Коллеги, всем доброго времени суток. Интересует веб фреймворк на снабже. Ну и орм (пгскл, монго), шаблонизатор. И у кого есть практика? В чем плюсы минусы

Index
06.01.2018
17:04:57
Фреймворки https://www.spock.li/ http://haskell-servant.github.io/

Denis
06.01.2018
17:12:28
Кметт активизировался http://comonad.com/reader/2018/the-state-comonad/

Sergey
07.01.2018
11:04:19
Всем привет. Задали задачу для нахождения количества решений логического уравнения: (x1 && x2 -> x3) && (x2 && x3 -> x4) && .. (Xn-2 && Xn-1 -> Xn) = True пока что толком не знаю, как подступиться, но есть пару вопросов. Я собираюсь создать функцию, которая принимает кол-во переменных (не менее 3), можно ли тогда сделать что-то вроде такого: [Xi <- [True, False]]. Сразу много задать списков

Антон
07.01.2018
11:05:17

Sergey
07.01.2018
11:06:45
Еще это уравнение можно привести вот к такому виду, чтобы выражалось на haskell (not x1 || not x2 || x3) && (not x2 || not x3 || x4) && ... && (not Xn-2 || not Xn-1 || Xn) = True

Валерий
07.01.2018
11:06:48
Ну и чего-нибудь подходящее для двух последних

Sergey
07.01.2018
11:10:15
да, тут на листе проще решить, согласен) просто хотел узнать, насколько сложно это сделать, чтобы все автоматом считалось. Я не могу толковое рекурсивное решение сделать

Валерий
07.01.2018
11:10:20
Я имел в виду, что все Х с 1 до n-2 включительно обязаны быть True

Google

Sergey
07.01.2018
11:12:17
X1 может быть False

Валерий
07.01.2018
11:12:36

Sergey
07.01.2018
11:14:03
(False && x2 -> x3) - это выражение всегда True, независимо от x2 и x3

Валерий
07.01.2018
11:14:13
Ой
Я приоритеты забыл)

Sergey
07.01.2018
11:14:30
импликация последней выполняется по приоритету

Admin
ERROR: S client not available

Sergey
07.01.2018
11:17:08
ну и вообще, само уравнение парсить не нужно, думаю, создать функцию countSolve :: Int -> Int число переменных -> в число решений

Alexander
07.01.2018
11:35:24
replicateM n [True, False] - создаст все списки длины n из True и False
например

Sergey
07.01.2018
11:39:44
блин, шикарная функция)) спасибо огромное, возможно, этого будет даже достаточно)

Alexander
07.01.2018
11:41:37
советую на досуге разобраться почему это работает :)

Sergey
07.01.2018
11:52:53
да, тут магия для меня какая-то происходит пока что)) Пока как есть использую, а потом разберусь)

Alexander
07.01.2018
11:57:53
а потом length $ filter all $ map (\t -> zipWith3 wtf t (drop 1 t) (drop 2 t)) $ replicateM ..., где wtf это твой код
даже лишней работы за счёт ленивости быть не должно, может правда zip не зафьюзится, но это мелочи
(надеюсь это была не контрольная в универе..)

adam
07.01.2018
12:05:36
СКНФ на хаскелле находит чтобы потом ему дали все девочки в группе ?

Alexander
07.01.2018
12:08:24
у меня было стойкое ощущение, что для этой цели выгоднее на общие пьянки ходить. Так что лучше если это просто задача по какому предмету или саморазвитие или ещё что
хотя ощущение может быть обманчиво, т.к. я на них не ходил

Google

Pig
07.01.2018
12:13:02
Черт! Twf выучил Haskell, а он оказался не нужен.

A64m
07.01.2018
12:18:35
может ли хаскельная программа, работающая 7 секунд работать сутки после переписывания на пурскрипте?

Pineapple
07.01.2018
12:19:05
Ставлю рупь — может

A64m
07.01.2018
12:19:49
через 80 мин. выясним

Антон
07.01.2018
12:30:10

A64m
07.01.2018
12:31:44
тут надо пояснить, что если скомпилировать этот код ghcjs без оптимизаций и запустить на jvm-ной явоскриптовой имплементации (V8 слишком быстрый) то работает меньше суток
ну а скомпилированный с оптимизацией на V8 быстрее чем клин, окамл и скала, так что дело не только в яваскрипте
да, может

Sergey
07.01.2018
15:17:56
Хочется применить RecordWildCards в таком виде:
data ABC = ABC { a :: Int, b :: Int, c :: Int }
m = do
let a = 1
b <- something
pure ABC {.. , c = 3}
Если почти это, то получается:
...
pure ABC {..} {c = 3}
Но хотелось бы того же для strict значений:
data ABC = ABC { a :: !Int, b :: !Int, c :: !Int }
возможно ли?

Denis
07.01.2018
15:20:40
А как RWC связан со строгостью?

A64m
07.01.2018
15:20:50
только ABC{c = 3, ..}

Denis
07.01.2018
15:36:22
Ну т.е. инициализировать в тот же момент все равно. Или это про синтаксис вопрос(я правда не понял)?

Sergey
07.01.2018
16:20:38
Да про синтаксис
а, ну и такая ворма понадобилась потому что нужно в одной области видимосте инициировать несколько ABC разными значениями, так что c заранее не пропишешь :
[ ABC{c = 1, ..}
, ABC{c = 2, ..}
, ABC{c = 3, ..}
]

kana
07.01.2018
20:10:36
так это че, с новым стаком .cabal файлом можно почти не пользоваться для тривиальных вещей (добавление зависимостей, скажем)?

Alexander
07.01.2018
20:12:09
я надеюсь, что все же нет, (если какое-нить решение типа hpack не используется)

kana
07.01.2018
20:16:12
это хорошо, а то формат .cabal какой-то пришибленный