@haskellru

Страница 1034 из 1551
Alexander
30.03.2018
12:57:13
хотя тайпчекер не всегда помогает

Denis
30.03.2018
12:58:19
без тайпчекера вообще неюзабельно

Alexander
30.03.2018
13:00:40
@A64m_qb0 ещё помощь нужна

name = gen ^. nameL . to(Right . RefName) . non(Left "Name not present") nameL линза в Maybe Text

Google
Alexander
30.03.2018
13:01:24
тут точно to надо, чтобы применилось для just только?

A64m
30.03.2018
13:02:42
а там на выходе-то перед non Maybe будет?

я бы вообще не советовал все эти линзы с мейбями использовать, а лучше призмы - траверсалы

Andrei
30.03.2018
13:03:13
не примонтировалось
если не монтируется, значит где-то бага. баги надо репортать.

Alexander
30.03.2018
13:03:21
то не взлетело, пробую ещё раз

а не это я дурак

Rigidus
30.03.2018
13:04:34
A64m
30.03.2018
13:04:42
newtype Metadata = Metadata (Map Text MetadataValue) data MetadataValue = MetadataInt Int | MetadataText Text
ну смотря что с этим делать, для мапа есть траверсал ix, ну или из at можно призму сделать, скомбинировав at "foo" . _Just

и призмы _MetadataInt и _MetadataText

там что с этим всем делать-то надо?

Alexander
30.03.2018
13:06:31
а. сделать линзу/траверсал wtf, который позволяет записать/прочитать определенный ключ из Map

name :: Either Text Text$ name = gen ^? nameL . to(Right) ^. non(Left "Name not present") Couldn't match type ‘Text’ with ‘Maybe Text’

A64m
30.03.2018
13:07:23
для ньютайп обертки Iso же сгенерировано?

Google
Alexander
30.03.2018
13:08:38
вот в куске выше newtype-ов нету

A64m
30.03.2018
13:11:02
если namel линза в мейби? тогда уж ^? nameL . _Just . to Right ^. non (Left "!") или что-то вроде

Andrei
30.03.2018
13:11:11
а где он ошики пишет? есть логи?
докер? в journal, должно быть

Alexander
30.03.2018
13:12:15
name = gen ^. nameL . to(fmap Right) . non(Left "Name not present") так взлетело

сейчас _Just вместо fmap запилю

A64m
30.03.2018
13:13:34
но из-за to это не линза

а только геттер

Alexander
30.03.2018
13:13:58
тут покатит

щас, у меня большой ворпос про то как nameL написать

Leonid
30.03.2018
13:14:23
починю
мёржи, чо чинить то

A64m
30.03.2018
13:16:00
ну и мне разонравился такой подход с non, мне теперь больше нравится второй вариант c matching где отдельно получение значения, а отдельно превращение "несматчившегося" значения в сообщение об ошибке в Left

Alexander
30.03.2018
13:16:46
у меня nameL :: Metadata -> Maybe Text

ой

блин

Lens Matadata (Maybe Text)

смотрит в мапу в определенный ключ

A64m
30.03.2018
13:18:17
а не лучше ли делать не линзу? а _Metadata . _ix "key" . _MetadataText

Google
Alexander
30.03.2018
13:18:48
кусок класса типов

другие могут переопределить

для других типов по другому работать может, так то да, приятнее выглядит

A64m
30.03.2018
13:19:49
соотв. matching (_Metadata . _ix "key" . _MetadataText) mmap & _Left %~ функцияПреобразующаяНеправильныйМапВСообщОбОшибке

Alexander
30.03.2018
13:20:19
так я что matching делает?

A64m
30.03.2018
13:21:05
пробует призму, если все получилось - Right ответ если не получилось Left тоКЧемуПрикладывалиПризму

Alexander
30.03.2018
13:21:34
сложно

так думаю

A64m
30.03.2018
13:22:41
ну такой prismToEither, только вместо задаваемого значения по умолчанию для ошибки дает все что нужно чтоб диагностику ошибки произвести, т.е. разбираемое дерево

те. парсим число вместо Right n или Left "бабах!" будет Right n или Left "не число, не распарсится"

в прочем, возможно есть какой-то изящий подход с запихиванием в Right посреди конвейера, только я тупанул и его не вспомнил

также может ix "key" не сработает а надо at "key" . _Just

Alexander
30.03.2018
13:28:17
опа мне на лекцию @bravit111 надо полчаса назад выходить

ага понял

пасиб

A64m
30.03.2018
13:29:24
в другом городе

Alexander
30.03.2018
13:29:32
1.5 часа ехать

т.е. на самом деле вот щас выходить

Leonid
30.03.2018
13:34:11
ага, в 18:00 за 1.5 часа. нуну

Google
Vyacheslav
30.03.2018
13:35:49
опа

а лекция уже сегодня что ли

я думал завтра?

или это какая-то другая лекция

Denis
30.03.2018
13:37:53
а завтра трансляция будет?

Alexander
30.03.2018
13:40:07
биокаде

Leonid
30.03.2018
13:41:07
3 вечера с @bravit111 !

Alexander
30.03.2018
13:41:54
мне тут дома сказали что Брагилевский круче меня, т.к. меня 3 вечера читать лекции не приглашают

Leonid
30.03.2018
13:43:01
верно сказали

Vyacheslav
30.03.2018
13:43:53
а есть какая-то ссылка?

на то что сегодня

A64m
30.03.2018
13:47:13
а сколько часов по устройству ghc?

Ignat
30.03.2018
13:48:37
а есть какая-то ссылка?
https://biocad.timepad.ru/event/689677/

Vyacheslav
30.03.2018
13:49:30
о, так это ж рядом со мной

Alexander
30.03.2018
13:49:52
почему в маршрутках ещё не придумали телепорт

Yuriy
30.03.2018
13:50:28
почему в маршрутках ещё не придумали телепорт
наушники обычно работают неплохо

Vitaly
30.03.2018
13:51:26
а завтра трансляция будет?
Не, должна быть запись

Denis
30.03.2018
13:52:14
Не, должна быть запись
в питер лень ехать, в москве бы сходил (

Google
Leonid
30.03.2018
13:54:09
Тут ехать то всего-ничего. Чуть дольше чем из Гатчины.

Kirill
30.03.2018
13:57:12
ты к тому, что Саша в Гатчине лекции будет читать скоро?

A64m
30.03.2018
13:57:18
шесть раз на сапсане

Alexander
30.03.2018
13:58:22
негде тут

в Питере хотя бы места есть где читать можно

Leonid
30.03.2018
14:02:00
@dshevchenko https://twitter.com/domenkozar/status/979713850428846081 всё, Никс побежден?

Kirill
30.03.2018
14:04:23
у меня тож такой вопрос

но вроде это скорей в никсочат, хотя там вроде Дениса нет

Denis
30.03.2018
14:09:11
там снойман пришел и стеком все собрал?

Denis
30.03.2018
14:10:06
Нет, тут дело именно в Домене, это его личное решение уйти.

понятно, что с его уходом мы не перестанем использовать Никс

у нас же есть и другие спецы в Никсе

Alexander
30.03.2018
14:11:09
и Снойман..

который не любит никс

@dshevchenko переходите на nix+bazel

Denis
30.03.2018
14:12:03
Это решаю не я, у нас для этого девопс-команда есть

:-)

Kirill
30.03.2018
14:12:11
@qnikst а вы уже кругом базель пользуете?

Denis
30.03.2018
14:12:22
Кстати, Снойман не с нами

Alexander
30.03.2018
14:12:26
нет

только в паре проектов

Страница 1034 из 1551