Cheese
Anonymous
Sathwik будет жить. Поприветствуем!
Anonymous
@onishenko будет жить. Поприветствуем!
Misha
я умудрился наткнуться на вот этот баг снова
https://github.com/commercialhaskell/stack/issues/1808
есть какое-нибудь решение нормальное?
Misha
такое впечатление, что в +RTS -p -threaded -RTS эти две опции взаимоисключающие
Alexander
насколько я помню - нет
Misha
стэк чего-то чудит у себя под капотом
Alexander
как на счет того, чтобы использовать cabal-install?
Misha
ну если никакого вменяемого решения не найду, то возможно выкину стэк совсем
Alexander
кабал сейчас уже вроде все умеет (ну кроме бесполезной установки ghc)
Евгений
cabal new-install до сих пор не работает
A64m
если из гита собирать не работает?
Евгений
Я 2.4 не пробовал, хз
Евгений
Просто стабильный 2.2 с new- юзал
Алексей
А что там не работает? У меня ещё с дорелиза 2.0 работает
A64m
https://github.com/haskell/cabal/blob/master/cabal-install/changelog#L27
A64m
ну, в 2.2 много чего нет, да
Иван
@A64m_qb0, извините, оффтопик, а кто у вас на аватарке?
Иван
Этот мужчина так смотрит, что у меня появляется ощущение, что стыдно не знать, кто это такой, но возможно я ошибаюсь.
кана
Sr
Oleg
Извините, а как запустить гугл?
A64m
не знаю, какой-то человек за ibm 3277, из рекламы 370(?)
Alexander
плохо гуглится, кстати
Alexander
в reverse image search
Anonymous
cabal-install работает аж с 2015, а то и раньше. Особенно с местными пакетами. При изменении либ в крайнем случае чищу песочницу.
Вопросы пожалуйте в студию.
ню-* ещё не пробовал.
стэк возможно сам код пишет. ☺️ для сборки пакетов и cabal сойдёт.
Евгений
> при изменении либ чищу песочницу
Такое себе
Alexander
будто со стеком stack clean 3.5 раза в день не запускаешь
A64m
старый кабал плохо работает
Alexander
@A64m_qb0 а как-нибудь с линзами по человечески можно из Maybe a сделать Either X a ?
A64m
matching _Just & _Left .~ X
Alexander
ок, Either X a -> Either Y a ?
Alexander
или проще через left это?
A64m
_Left .~ Y
A64m
или
_Left %~ f
где f :: X -> Y
Alexander
так попробую Either X (Maybe Y) в (Either Z Y) скомпозить
Alexander
& (_Left %~ f) &(matching _Just & _Left .~ Z ?
Alexander
не, не от
Alexander
join . left f . right (maybe (Left z) Right) было бы без линзов
Alexander
а с линзами как
Alexander
1. xyz & _Left %~ f :: Either Z (Maybe a)
Alexander
2. xyz & _Left %~ f & _Right %~ (matching _Just & _Left Z :: EIther Z (EIther Z a)
Alexander
+-
A64m
(_Left .~ "Z") . matching _Just
A64m
> :t (_Left .~ "Z") . matching _Just
(_Left .~ "Z") . matching _Just :: Maybe a -> Either [Char] a
Alexander
у этом случае у меня Z и для случая Left, и для Right Nothing?
A64m
там не будет Right Nothing
A64m
matching вернет Left (не сматченное призмой _Just)
A64m
т.е. Left Nothing
Alexander
не я сейчас пытаюсь собрать Either X (Maybe a) -> Either Z a
Alexander
где Left x -> (f x), Right Nothing -> z
A64m
(_Left %~ f) . matching (_Right . _Just)
тогда
Alexander
пока у меня (_Left %~ f) . _Right mathicg _just
Alexander
так.. а!
Alexander
ещё нужно как-то добавить кейс для Right Nothing
Зигохистоморфный
почему не просто either?
Alexander
дай повыпендриваться
Alexander
чтобы понять что линзы тут не нужны нужно понять как их написать
Alexander
т.к. иначе когда их надо будет написать - ты не сможешь
Зигохистоморфный
по сути нужно морфизм двух призм
Зигохистоморфный
какой-нибудь withPrism
Alexander
я запутлся и сдался
Зигохистоморфный
either (Just . f) (const Nothing)
Зигохистоморфный
я просто не понимаю иногда) зачем линзы если они иногда овер
Alexander
either (Left f) (maybe (Left z) Right)
Зигохистоморфный
а чего не просто?
Right 10 ^? _Left
Left 10 ^? _Left
Alexander
ты не то написал что надо (вроде)
Anonymous
Mark Stupin будет жить. Поприветствуем!
Oleg
Попробовал в haskell-ide-engine мультикомпиляторный режим.
Ругается
Mismatching GHC versions: Project is 8.2.2, HIE is 8.4.3 You may want to use hie-wrapper. Check the README for more information
"languageServerHaskell.useHieWrapper": true не помогает, vs code пишет, что не такой опции
Что делать?
Maxim
а какой путь до сервера указан?
Maxim
hie делает бинарник hie-wrapper, его надо указывать как сервер
Oleg
Никакой, всё по-дефолту
Oleg
Я так понял, когда их несколько какая-то приблуда должна цеплять нужный на основе проекта
Oleg
типа "languageServerHaskell.useHieWrapper": true для этого и нужен
Oleg
Maxim
я не юзал hie с вскод, я не знаю, может он как-то и умеет сам
Maxim
👍
Cheese