@haskellru

Страница 1033 из 1551
Alexander
30.03.2018
10:14:33
(я не знаю имеет ли смысл или нет)

Yuriy
30.03.2018
10:28:04
спасибо

Александр
30.03.2018
10:30:50
https://www.youtube.com/watch?v=emj-p49p4bc&feature=youtu.be во какая штука по ютубам ходит
Так. Я открыл трансляцию и увидел 1С. Это так и задумано?

Alexander
30.03.2018
10:31:07
наверное, @IIvana же 1c программист

Google
Александр
30.03.2018
10:31:16
Точно, в заголовке написано

kana
30.03.2018
10:38:43


Yuriy
30.03.2018
10:38:49
а можно ли как-нибудь совместить количество бойлерплэйта QuickCheck и красоту отчётов Hedgehog?

kana
30.03.2018
10:39:14
хм, да, в принципе есть, боттом же в первом тоже пройдет

Quet
30.03.2018
10:39:35
чтобы было бойлерплейта как в hedgehog и выглядело как quickcheck? )

A64m
30.03.2018
10:39:47
а можно ли как-нибудь совместить количество бойлерплэйта QuickCheck и красоту отчётов Hedgehog?
написать тайпкласс и инстансы которые по типам ежовые комбинаторы комбинируют?

A64m
30.03.2018
10:42:05
он, наверное, тогда минифицировать контрпримеры не сможет, нет?

Alexander
30.03.2018
11:06:17
case foo ^. bar of X -> pure () ; _ -> Left "Bad foo" как с линзами хорошо написать?

для foo можно генирть поля призмы линзы и все прочее

Leonid
30.03.2018
11:18:44
ну почему servant-auth берет JWK а не JWKSet? опять всё переписывать

вот всё так в хаскеле

Google
kana
30.03.2018
11:19:15
ох уж эти типы

Alexander
30.03.2018
11:25:21
а вот не было бы типов

и было бы все хорошо

может раже сработало бы

kana
30.03.2018
11:25:38
главное что ошибок типов бы не было то есть ошибок было бы меньше

Alexander
30.03.2018
11:27:45
действительно!

я не думал с этой стороны

Leonid
30.03.2018
11:28:58
Ну почему всё так плохо :(

Дайте-ка я расширю Auth своим методом - а вот хрена лысого, нужные классы не экспортируем

лучше бы я на питоне писал. там мне бы джанго всё сама сделала

Alexander
30.03.2018
11:30:55
что там не экспортировано?

Leonid
30.03.2018
11:31:54
https://github.com/haskell-servant/servant-auth/blob/master/servant-auth-swagger/src/Servant/Auth/Swagger.hs#L38 ну вот это хотя-бы. Нет, я конечно форкну и пулл-реквест сделаю.

но вот прототипировать на хаскеле нельзя

кругом засада

Pig
30.03.2018
11:36:28
Прототипировать надо на лиспе, а потом из лиспа генерить хаскель

Alister
30.03.2018
11:36:50
да вы извращенец

Leonid
30.03.2018
11:37:04
а что, в вашем лиспе больше либ готовых к продакшену?

Alister
30.03.2018
11:37:09
прототипировать надо на Скретче и импортировать потом в асемблер

Leonid
30.03.2018
11:38:13
вечно вы всё к смехуёчкам сводите. сами то поди на кложе прод пишете

Google
Alister
30.03.2018
11:38:29
я вообще рубист

kana
30.03.2018
11:38:39
а я фронтендер на жиес

Alexander
30.03.2018
11:38:48
все так, прототипируем на руби, потом переписываем на фронтенд

Pig
30.03.2018
11:39:06
А я студент ?

Alexander
30.03.2018
11:39:11
кроме шуток, прямо сейчас сидим и перносим логику с бэка на фронт

Alister
30.03.2018
11:39:44
тонкий сервер?

Alexander
30.03.2018
11:40:40
не совсем тонкий, просто рендер переносим

но в рендере логики побольше чем в бэке

A64m
30.03.2018
11:44:46
Alexander
30.03.2018
11:44:57
пасиб

kana
30.03.2018
11:45:26
case мне больше нравится

Alexander
30.03.2018
11:46:01
мне кажется это снепривычки

хотя я тоже с трудом читаю

Alexander
30.03.2018
11:47:33
@A64m_qb0 а аналог is есть?

A64m
30.03.2018
11:48:08
не понял

Alexander
30.03.2018
11:48:11
чтобы что-то типа unless (foo ^. bar . _X ....) $ Left "Bad Foo" написать

.to (const $ True) . non False

только чтобы человечно было

A64m
30.03.2018
11:49:28
какой-то maybeToEither "error!"

не знаю, может и есть, но это думать надо

Google
A64m
30.03.2018
12:02:40
можно еще matching (bar . _X) foo & _Left .~ "Bad foo"

Alexander
30.03.2018
12:06:08
хм..

пока все ещё страшнее, но спасибо вроде понял

более тупой вопрос есть Lens

есть Lens M (Maybe X) есть Prism X Y как сделать из первой Lens M (Maybe Y) ?

Yuriy
30.03.2018
12:08:28
a . _Just . b, но получится призма, линза невозможна

хотя...

Alexander
30.03.2018
12:08:58
а как сделать линзу? у меня все во все стороны есть

хотя может это и должна быть призма

в общем-то это изначально 0, or 1 target

в общем вся задача

есть Map X Y хочу линзу/призму wtf которая работает с определенным ключем

ну там не Map, но у него есть At класс

at возвращает линзу, т.е. я и думал, что мне тоже линза нужна

A64m
30.03.2018
12:12:01
ну из at призмы линза как раз делается non т.е. [1] ^. at 2 . non 0 или что-то вроде

Alexander
30.03.2018
12:12:13
_go :: Lens' Metadata (Maybe Text) _go = at lblName

есть такая штука, она падает с:

• Couldn't match type ‘Text’ with ‘MetadataValue’ Expected type: (Maybe Text -> f1 (Maybe Text)) -> Metadata -> f1 Metadata Actual type: (Maybe (Control.Lens.At.IxValue Metadata) -> f1 (Maybe (Control.Lens.At.IxValue Metadata))) -> Metadata -> f1 Metadata

есть Prism MetadataValue Text

Google
Alexander
30.03.2018
12:13:49
почему не разворачиваются семейства не знаю но там MetadataValue будет

или я чушь пишу?

я бы сейчас явно попытвался профунктором воспользоваться

Rigidus
30.03.2018
12:17:23
Есть хаскельный проект в докере, контейнер билдится через stack. Как правильно прокинуть в него папку с конфигами? В Dockerfile я сделал бы это через COPY, а как сделать это в stack?

Alexander
30.03.2018
12:27:04
_go :: Lens' Metadata (Maybe Text) _go = at lblName . lmap _foo . rmap _bar _foo :: Maybe MetadataValue -> Maybe Text _foo x = join $ fmap (^? _ValueText) x _bar :: Functor f => f (Maybe Text) -> f (Maybe MetadataValue) _bar = fmap (fmap (\y -> y ^. re _ValueText))

@cblp_su @A64m_qb0 как из этого человеческое что-то сделать?

по типам сходится, по смыслу тоже

далее ещё вопрос, есть Metadata, At => Metadata каким комбинатором по ключу получить и убрать значение из Metadata?

: (

A64m
30.03.2018
12:40:15
чего-то я сходу не разобрался, это надо в репле с чем-то работающим поэкспериментировать

Alexander
30.03.2018
12:45:41
newtype Metadata = Metadata (Map Text MetadataValue) data MetadataValue = MetadataInt Int | MetadataText Text

это упрощенные до достаточные для воспроизведения типы из пасты выше

могу и компиляющийся пример наверное

хочу lens normalizer

которому даешь линзу, а он её в каноническую форму приводит

Leonid
30.03.2018
12:49:51
@s9gf4ult https://bitbucket.org/s9gf4ult/postgresql-query/issues/2/fails-to-build-with-either-5 Ну Семён Семёныч

Alexander
30.03.2018
12:51:31
линзами только с тайпчеккером можно пользоваться

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