
blkmrkt
05.10.2016
21:31:50
а какие задачи вы на хаскеле решаете?

Kit
05.10.2016
21:32:54
Да я собственно не программист, хочу на хаскеле нейронку поднять и датасаинс
Если есть желание могу пригласить на добровольно безвозмездных началах с кластером

Google

blkmrkt
05.10.2016
21:34:41
ох я кроме как в универе не занимался этим

Kit
05.10.2016
21:34:55
Аналогично

blkmrkt
05.10.2016
21:35:58
кстати, не знаешь готовых БД для high-dimensional data? конкретно интересует phash и подобное, а именно быстрый ретрив N записей по дистанции

Kit
05.10.2016
21:36:32
Не-а

_______bx
05.10.2016
21:36:51

blkmrkt
05.10.2016
21:37:14
у phash есть простой бинарник в комплекте, но он CLI и просто proof of concept

Kit
05.10.2016
21:37:36
И питон тоже будет, но магия исчезает

blkmrkt
05.10.2016
21:38:14

_______bx
05.10.2016
21:47:01
@blkmrkt ну так а как у вас задача решилась с id?

blkmrkt
05.10.2016
21:47:42
printf (id (t::WallTask))

_______bx
05.10.2016
21:50:11
как все просто оказалось)

blkmrkt
05.10.2016
21:50:53
Да уж. Хорошее наверное средство - добавить скобочек, да добавить/убрать $

Google

_______bx
05.10.2016
21:55:29
а у меня вот так и не завелось в Main
заработало только в таком варе
для
но он не катит

blkmrkt
05.10.2016
21:58:10
я бы добавил скобочек ?
Just (Wt (x :: Wt) (i :: Wt)) -> ...

_______bx
05.10.2016
22:00:05
нет я про ваш пример)
тот что я показал работает
но имеет значение порядок полей

blkmrkt
05.10.2016
22:00:40
ааа
hlint предлагает только упростить в то что не компилируется потом

Kit
05.10.2016
22:02:34

_______bx
05.10.2016
22:02:44
Ambiguous occurrence ‘id’
It could refer to either ‘Prelude.id’,
imported from ‘Prelude’ at source_file.hs:1:1
(and originally defined in ‘GHC.Base’)
or ‘Main.id’,
defined at source_file.hs:5:25
да

blkmrkt
05.10.2016
22:02:59
а я ж импортировал Prelude hiding (id)

_______bx
05.10.2016
22:03:07
ааа
понятно
а если не прятать? никак явно не указать что поле из WallTask?

blkmrkt
05.10.2016
22:06:45
так вот же самый явный импорт
нужно лишь явно инферить тип t, вот это контринтуитивно. На форумах расписано почему, но я еще не в состоянии понять

_______bx
05.10.2016
22:09:52
так работает

blkmrkt
05.10.2016
22:11:34
угу я так сперва и делал, пока в одном модуле не определил тип со вторым id

Google

_______bx
05.10.2016
22:12:56

blkmrkt
05.10.2016
22:16:00
почему? там выше у вас task = ... :: WallTask
тоесть тип WT известен должен быть. Или нет?
угу вот этого я так и не понял, почему он не инферит очевидное. Тут вот разговор как раз про это: https://www.reddit.com/r/haskell/comments/4vejt3/unable_to_infer_type_when_using/
Насколько я понял, DuplicateRecordFields это часть более крупного функционала, который не реализован полностью, и делает DuplicateRecordFields ровно то о чем она говорит - позволяет определять дубликаты полей в одном модуле, но ничего про обращение к этим полям из того же модуля не сказано

Kit
06.10.2016
07:08:08

Misha
06.10.2016
23:06:23
а вот вопрос @qnikst в первую очередь: а насколько вот это https://github.com/qnikst/2pc-haskell закончено и "production ready"? И насколько оно подходит для сценария "хочу обновить STM-стейт на двух узлах, а кроме того, закоммитить изменение в постгрес"?

Alexander
07.10.2016
03:54:35
Интерфейс может немного наркоманский, ну и в двухфазном коммите сложнее с откатом чем в скажем паксос
Если хочешь я могу еще раз посмотреть как там и что

Misha
07.10.2016
08:20:54
пока не нужно, спасибо, я распределенную часть оставил на десерт, к тому же это pet project, на него времени много нет. Но если пойму, что оно хорошо подходит под задачу, то буду еще спрашивать.

Alexander
07.10.2016
09:38:45
Ok

Vladimir
07.10.2016
13:35:40
Программирование на Haskell — ты начинаешь искать черного кота в темной комнате, тут понимаешь что можно бы сделать более общий алгоритм и искать любое черное животное. Животное любого цвета. В любой комнате. В комнотоиде. В любом метрическом пространстве. В итоге бросаешь это дело.

Kit
07.10.2016
14:41:56

Vladimir
07.10.2016
16:26:45
можно подумать, искать черного кота в темной комнате это хорошая идея

Denis
07.10.2016
16:46:01

Olesya
07.10.2016
17:56:12
А кстати, кто нибудь в реальных проектах использует хаскелль? Расскажите)

Paul
07.10.2016
17:58:37
Тут на эту тему опрос был. Вроде 15% конфы.

Olesya
07.10.2016
18:00:18
Я, видимо, не застала опрос)) просто все мои знакомые кричат, что язык бесполезный и все такое. А мне наоборот показался полезным для некоторых оптимизаций. Но я начинающий прогер, потому у меня мало аргументов для спора)

Paul
07.10.2016
18:05:46

Olesya
07.10.2016
18:07:52
Ну не сказала бы что в области дата сайенса безмозглые)

Jonh
07.10.2016
18:37:58

blkmrkt
07.10.2016
18:40:44
подскажите либу для логов с раскраской и разными видами транспорта. чтоб просто делать например warn "[*] Opasno!" или info "Connected to %s" serverAddress

Google

Alexander
08.10.2016
13:20:25
Имхо раскрашивать система куда логи идут должна, если это в stdout который в терминал, то см в сторону ascii-terminal, там есть все эти последовптельности
Про использование - мы используем еще в том числе в РФ несколько фирм знаю и вне
Но в очередной раз писать лень про это все

Evgenij
12.10.2016
16:36:13
Положил эту хрустальную штуку в шкафчик(Надеюсь пока)

Vladimir
12.10.2016
16:40:27
Кого?

Evgenij
12.10.2016
16:41:35
Кого?
Не кого а что -Хаскель?
Незнаю как в мечтах но богомерзкая джава реально рулит даже в Рапид дев((

Vladimir
12.10.2016
17:02:08
Ну можно применять всякие штуки из хаскеля в ООП
Я все мечтаю избавиться в своих рабочих проектах от нулевых ссылок с помощью мейби и айзер, но весь проект рефакторить мне не дадут)-

Kit
12.10.2016
17:07:52

Vladimir
12.10.2016
17:12:04
Не, я в геймдеве на C# игрушки для телефонов делаю, но можно сделать монадоподобные обертки )

Evgenij
12.10.2016
17:14:59

Anatolii
12.10.2016
17:15:06
А чем там джава лучше?

Evgenij
12.10.2016
17:16:33

Vladimir
12.10.2016
17:18:42
@johhy13 да игрушки всякие. Иногда надо еще с сервером по хттп разговаривать.

Evgenij
12.10.2016
17:25:36

Anatolii
12.10.2016
17:26:00
Я вон в сервант вщял
И за вечер разобрался
На нем иак же быстро все клепается
Я не смотрел другие либы

Google

Anatolii
12.10.2016
17:26:01
Я думаю какой-то Скотти ещё легче в освоении будет
Кода писать меньше надо

Vladimir
12.10.2016
17:38:24
@johhy13 да не, игры на юнити/c#, но в хаске есть много прикольных штук, которые можно перетащить в другие языки

Anatolii
12.10.2016
18:19:35
Если вот совсем быстро что-то нагавнякать - я go выберу. Мне кажется что если на хаскеле руку набить - то протипирование очень быстрое будет, быстрее чем на java/go
Был же где-то пэйпер
Старый правда
Там сравнивали языки по скорости прототипирования
Ну и там хаскель с большим отрывом ушел
Причём, там было 2 замера по хаскелю
Один - писал человек который умел в хаскель