« first day (176 days earlier)      last day (2 days later) » 

01:17
Aaargh, dang it, halting problem. It's too difficult to ensure a loop will always finish!
It's not really clear what a general monad extraction operation should do in e.g. list or function
@MichaelHomer They're basic examples of monads in Haskell. For lists, it's a "for_each" iteration, and for functions, it's a reference to future return value.
01:36
@MichaelHomer yeah that's sorta what i meant by "too powerful"--you'd turn the whole block into a general do-statement
so if you had something like the list monad, oops, looks like rust has backtracking now :P
01:58
It also matters exactly what the scope of that lifting is in a way that it doesn't for an option type that can just short-circuit out of the function, especially if there's more than one ? and especially with branching. For types with trivial binds that only invoke the continuation once it's more straightforward
yeahhh
plus for multiple invocations you'd suddenly have to do a lot of dealing with move/borrow/mutation semantics, at which point you may as well just use closure syntax anyways
I must do it. I will do it.

« first day (176 days earlier)      last day (2 days later) »