Евгений
Странно, что на именно вопрос никто не ответил
Я ответил в меру своего понимания вопроса
Alexander
Странно, что на именно вопрос никто не ответил
вроде ж отвечено было, тут не ясно что разворачивать в ответе
кана
ну он вроде как там определен, я не знаю даже
Alexander
Prelude Control.Monad.IO.Class> :i MonadIO class Monad m => MonadIO (m :: * -> *) where liftIO :: IO a -> m a
Alexander
про MonadTrans он ничего не говорит
Alexander
определен в base
Alexander
@kana_sama ^
Alexander
другое дело, что для в transformers есть его инстансы для ReaderT/WriterT.../T
кана
так нет, вопрос был в том, можно ли сделать операцию, которую делает liftIO, но без liftIO
Alexander
можно
кана
ответ - указав цепочку лифтов, который в монадтранс
кана
разве нет?
Alexander
но можно сделать цепочку лифтов без лифтов
Alexander
newtype MyMonad a = MyMonad (IO a) instance MonadIO MyMonad where liftIO = MyMonad
Alexander
вот тут lift нету
Alexander
class MonadTrans (t :: (* -> *) -> * -> *) where lift :: Monad m => m a -> t m a
Alexander
т.к. трансформера у меня нету
Alexander
MonadIO это ближе к mtl-like правильному
кана
newtype MyMonad a = MyMonad (IO a) instance MonadIO MyMonad where liftIO = MyMonad
но для всяких State это же не прокатит, их реализация инкапсулирована
Alexander
т.е. 1 уровень реализующий разные тайпклассы
Alexander
а не когда у нас MonadReader/MonadWriter и т.п. для стека делается
Alexander
что значит, что не прокатит?
Alexander
я точно так же могу и для State написать
Alexander
newtype MyMonad a = MyMonad (StateT IO a) instance MonadIO (MyMonad where liftIO f = MyMonad $ StateT $ \s -> f >>= pure . (s,)
Alexander
но да для монад из transformers оно уже реализовано за нас через через MonadTrans
Alexander
instance [safe] MonadIO IO -- Defined in ‘Control.Monad.IO.Class’
Alexander
т.е. несмотря на то, что инстансы для привычных трансформером уже реализованы через MonadTrans, другой связи между MonadTrans и MonadIO нету
Alexander
@kana_sama согласен?
кана
полагал, структура стейт закрыта и не экспортируется, типа чтобы нельзя было построить стейт без хелперов
кана
сутки за компом...
Alexander
было бы печально если бы не экспортировалась
A64m
ну ладно, хоть по линейным типам пропозал появился
a66ath
Подкаст опять успешно помер
Alexander
самое время записаться про HaskellXchange?
a66ath
И книга не пилится
A64m
что за книга?
Alexander
какая из?
a66ath
Да денисовская
a66ath
Другие вроде пилятся
Denis
@bravit111 книгу анонсировал
Denis
во заживем
a66ath
Да, будет как Intermediate Haskell
a66ath
Только более академично штоле
Denis
главное чтобы не как haskellbook
a66ath
А что не так с haskellbook?
a66ath
Автор- Аллен? Ну это да, проблема
Vitaly
Не будет академично, я думаю
Denis
Автор- Аллен? Ну это да, проблема
этого достаточно, как по мне
a66ath
Будет что-нибудь из 8 части мануала GHC?
a66ath
Там где расширения
Vitaly
Всё будет
Vitaly
В том или ином объёме, конечно
a66ath
Ну хорошо, ждем
Denis
@bravit111 переживаю будет ли крепостной на обложке
Vitaly
Ой, на обложку вообще повлиять нельзя
Vitaly
Кто-то точно будет
Зигохистоморфный
https://twitter.com/ChShersh/status/928347693193351169
Alexander
@A64m_qb0 а @stdlib в твиттера это кто?
Зигохистоморфный
Ой, на обложку вообще повлиять нельзя
есть планы на собственную книгу по хаскелл?)
Vitaly
Сейчас все пишут книжки по Хаскелю
Alexander
я не пишу!
Alexander
я только чуть-чуть контрибучу
A64m
в которую?
Alexander
которая от int_index и neongreen
A64m
а, ее пишут еще, хорошо
Anatolii
а там далеко до завершения?
Anatolii
это у нас на 2018 потенциально 3 книжки по хаскелю
Alexander
у меня есть идея для своей книжки и обложка, но я никогда её не напишу http://i.juick.com/p/2862741.png
Alexander
а у Остина Сейпа сейчас подгорание от пропозала по линейным типам
Alexander
в его обычном стиле
A64m
да я увидел уже
Anatolii
@qnikst а далеко еще до заверщения книжки в которую ты контрибиш?
Alexander
прилично
Alexander
но может все ускорятся и будет к концу года
A64m
начал читать его вопрос про перформанс. Но ведь в статье же были бенчмарки даже, на какой-то, видимо, Райан Ньютоновской задачке про деревья
Anatolii
интересно что там c joy of haskell
Alexander
подее там не должно пока никак на перфомансе отразиться
Denis
дайте линк на подгорание