Hacker News new | ask | show | jobs
by stouset 1254 days ago
You might choose to believe that, but `Option` and `Result` are practically purpose-built in Rust to work extremely well with functional approaches.

And doing so greatly increases the likelihood that the compiler can produce perfectly optimal code around them.

1 comments

My issue was with the `zip()` usage. For lists I know that it will stop short once one of the lists has run out of items, but I haven't seen it used this way to combine optional values. I'm assuming it only produces a result if all of the elements passed in are non-null (based on the prior code) but it still seems too clever IMO. IDK, maybe this is a common pattern I'm unaware of.