
Denis
04.12.2017
22:07:03

Alexander
04.12.2017
22:07:16
@catamorphism да просто тип, в котором элементы упорядочены

Denis
04.12.2017
22:07:43

Google

Alexander
04.12.2017
22:07:55
а какой ты от них хочешь профит?
можно выразить требование линейности на типах
пока ж никакой магии лишней нету
типа off-heap хранения и т.п.

kana
04.12.2017
22:08:27
тоже +1 за haskell_learn

Denis
04.12.2017
22:08:51

Alexander
04.12.2017
22:09:13

Denis
04.12.2017
22:09:34
что за haskell_learn?

Denis
04.12.2017
22:09:36
ну это мультисет обычно называется

kana
04.12.2017
22:09:54

Denis
04.12.2017
22:10:03

Denis
04.12.2017
22:10:13
https://hackage.haskell.org/package/multiset

Egoarka
04.12.2017
22:10:24
дошел до 9 главы io haskell_learn, до сих пор сдвинуться дальше не могу из-за нехватки времени ;(

Google

Alexander
04.12.2017
22:10:42
хочу таки запилить сортировку, проверка того что все элементы на месте нахаляву есть
а что сортированы нету

Denis
04.12.2017
22:11:13
ну я сам пакет не юзал, просто это то, что ты хочешь
А какое отношение линейные типы к мультисету имеют тут?
может я вопрос не понял

Alexander
04.12.2017
22:15:55
никакого, я играюсь с линейными типами и делаю (сделал) сортировку
мне было интересно как добавить то, что они ещё и сортированы
в идрисе кстати я даже такого не осилил с их UniqueTypes там это ад

Слава
04.12.2017
22:17:32
Есть такой язык, пересекающийся с ada, называется ada spark. В нем можно сделать контейнер, который будет хранить элементы и давать гарантию, что элементы упорядочены. Но, для этого потребуется повесить постусловия на все методы работы с контейнером - вставка, удаление, и написать доказательство для верификатора. Как это сделать на типах - не представляю.

Евгений
04.12.2017
22:17:46
В хаскель завезли линейные типы? :О

Denis
04.12.2017
22:18:05
но лучше мультисет, ей богу

Alexander
04.12.2017
22:19:27
я не уверен что я нахаляву получу линейный мультисет

Denis
04.12.2017
22:19:54

Alexander
04.12.2017
22:19:54
точнее я так понимаю он вообще не может быть линейным просто ну никак

Denis
04.12.2017
22:19:57
ни про что линейное я подсказать не могу, я в них не умею

Alexander
04.12.2017
22:20:28

Евгений
04.12.2017
22:21:34

Google

Alexander
04.12.2017
22:21:47
можно
не знаю много ли с этого толку прям щас

Denis
04.12.2017
22:22:08
Наверное можно, но зачем?

kana
04.12.2017
22:27:28
https://t.me/haskell_learn

Евгений
04.12.2017
22:28:56

kana
04.12.2017
22:29:34
Чтобы конфа использовалась, нужно активно туда людей редиректить по вопросам и добавишь в шапку

Евгений
04.12.2017
22:44:25
Чо-то я не могу в ghc 8.2.2 найти доку по линейным типам
https://downloads.haskell.org/~ghc/8.2.2/docs/html/users_guide/index.html

Alexander
04.12.2017
22:44:57
а в 8.2.2 и нету

Евгений
04.12.2017
22:45:48
Вы на мастере сидите?

Alexander
04.12.2017
22:46:08
на своей ветке

Евгений
04.12.2017
22:52:17
Какой-то раст-мир прям :) а вы черри-пикаете из мастера или еак это работает

Index
04.12.2017
23:28:31
Ок, вопрос от новичка - как начать получать деньги за кодинг на хаскеле? Желательно на удалёнке. Какой минимум знаний нужен для такой работы, и что следует прочитать и прорешать?
К примеру, для работы на java достаточно прочитать Эккеля, узнать, зачем нужен Spring (загадка великая, до сих пор никто не ответил), чуть-чуть знать так называемые прости господи паттерны проектирования и уметь делать простые запросы на sql, для чего достаточно упражнений на sql-ex. И ещё уметь пользоваться maven'ом (чего там уметь-то).
Итак, что нужно для Хаскеля? И где под него ищется работа?
Нужно знать рекурсию, rm -rf ~/.cabal, и две теории категорий (одна запасная)
Всё это описано в книге "Haskell для чайников, или как перестать сопротивляться и полюбить тайпчекер"

Igor
05.12.2017
00:04:16

kana
05.12.2017
00:21:54

Igor
05.12.2017
00:32:57
это всё равно. задача была достаточно простой, чтобы человек сам разобрался. представь, что всякий раз, когда ты пытаешься что-то решить, тебе сразу спойлерят решение. так ничему не научишься.

kana
05.12.2017
01:57:30
пытаться идти тут окольными путями это как пытаться объяснить, что нельзя складывать в хаскеле 2 + “qwe” не потому, что это разные типы, а + требует один и in Num, а как-нибудь через теоркат

Google

Den
05.12.2017
02:04:41
А как заставить cabal пересобрать все установленные пакеты (был добавлен флаг PIC), но чтоб он использовал строго уже установленные версии, а не пытался их обновить?
cabal install —reinstall world пытается
вопрос снят: —force-reinstall не пытается (правда, всё равно не получилось - полезли странные ошибки, а ghc всё равно не собирает ничего, т.к. rts из haskell platform собран без PIC :( )
короче, подложили свинью с этим PIC-ом в Debian 9

Admin
ERROR: S client not available

Vyacheslav
05.12.2017
08:53:35
а подскажите плз хорошую либу для логгирования в файл?

Hot
05.12.2017
08:53:59
log4j вроде перенесён уже повсюду, куда только можно.
Мб и до хаскеля добрались.
И нет, я не жавист.

Vyacheslav
05.12.2017
08:55:01
нет, не перенесен
https://hackage.haskell.org/package/hslogger-1.2.10

Aleksey
05.12.2017
08:55:40
https://hackage.haskell.org/package/fast-logger

Vyacheslav
05.12.2017
08:55:42
я нашел такую штуку, но он во-первых с 2015 года не поддерживается, во-вторых там блин надо свой хэндлер писать

Aleksey
05.12.2017
08:56:31
над fast-logger есть надстройки
Можно поискать через обратные зависимости
https://hackage.haskell.org/package/log-warper
Чтобы не "везде таскать с собой" можно monad-logger - этот поверх fast-logger работает и MTL-style констреинт даёт

Alexander
05.12.2017
09:10:51
katip
используйте

Google

Alexander
05.12.2017
09:14:22
катип хороший, не реордерит сообщения
и можно делать как и дурацкий таймер, так и точный
и контексты таскать можно
и свой handler подставлять
но на эти контексты будет оверхэд, если кто померяет и там много будет, то можно потратить время и улучшить, там есть куда

Anatolii
05.12.2017
09:32:20
а в миграции persistance можно куда-то индексы добавить?
а то я что-то не нашел
какие-то странные миграции получаются
вроде мигрируют - но не все что нужно
и еще я в доках нашел что он не поддерживает переименование полей, но как это обойти я не нашел
ему чтоли никак нельзя подпихунть sql файлик для миграции

Leonid
05.12.2017
09:46:40

Denis
05.12.2017
09:48:23
у нас свои костыли на fast-logger

Vyacheslav
05.12.2017
09:48:47
katip
там бы документации побольше