3 ms·
Agreed, Rust can certainly handle lazy evaluation. All the iterator types for example are lazy, hence the .collect() method which eagerly evaluates a lazy colle
by DougBTX 7y ago
Agreed, Rust can certainly handle lazy evaluation. All the iterator types for example are lazy, hence the .collect() method which eagerly evaluates a lazy collection.
Hiding the fact that a lazy value needs to be mutated to initialise it is a little more work (since a nice API lets the user treat the value as if it doesn’t need to be mutated), but is certainly possible.
- vmchale 7y ago> All the iterator types for example are lazy, It's not proper laziness as defined in Okasaki's thesis/book. One needs more complex things like lazy finger trees.
- paulddraper 7y agoThe iterator is lazy. The language is not.