I just wrote `task.join()??`. Am I bad at #rust?
@rillian you got me curious what the record for the longest `?` operator chain on crates.io is
nix/src/mount/linux.rs at 154a8a4a00fea72ada265de69485b67634fb49b9 · nix-rust/nix

Rust friendly bindings to *nix APIs. Contribute to nix-rust/nix development by creating an account on GitHub.

GitHub
@antonok @rillian oh hell, it's like LISP but they used the question mark as an operator rather than for text literals. The pain: it hurts.

@me @antonok @rillian it's actually very nice in most cases, so if you want to bubble up errors you just write

function1()?;
funftion2()?;

the issue in this snippet is that it's all nested closures, making that all a bit harder

@laund @antonok @rillian would it not have been more clear in this example to do something like:
} )?
} )?
} )?
} )?;
Not sure how the operator is scoped so maybe not, but generally speaking people are much better at reading one question mark than a row of them.
@me @antonok @rillian the issue is that you can't return from inside a closure, since the closure might be called later/elsewhere