More like IO with refinement on top of it, innit? But there are other encodings of effects that do not involve monads and, according to rumour, are composable (for some values thereof). I believe F* featured something like that, they even had Div or somesuch for divergence.
Yes, parameterized by list (set?) of effects that occurred. I think this should be possible in Haskell too, with some existing or plausible extension. Need to think about it.
DataKinds and friends should be enough methinks, at least for a rough approximation of this. Is type inference for this decidable, though? Type checking should be.
Yes, it does. But it is parametrized with either an open or closed row of effects and thus Eff (console::CONSOLE) doesn't compose with Eff (fs::FS). By opening and closing the row and adding and removing effects I can control the composability. This is also not fine-grained enough (esp. with the "inflation of effects" when everybody and their grandmother invents new type of effect which implicitly may include others) but it's much, MUCH, more fine-grained than IO() which is just "some IO" who knows what it does.
RE: Re: Ðе знаÑ, можно ли поÑÑиÑаÑÑ
Date: 2016-08-18 01:32 pm (UTC)no subject
Date: 2016-08-18 01:38 pm (UTC)no subject
Date: 2016-08-18 02:26 pm (UTC)no subject
Date: 2016-08-18 03:23 pm (UTC)Re: Re: Ðе знаÑ, можно ли поÑÑиÑаÑÑ
Date: 2016-08-18 09:59 pm (UTC)Re: Re: Ðе знаÑ, можно ли поÑÑиÑаÑÑ
Date: 2016-08-19 03:31 am (UTC)