|
|
|
|
|
by ynik
551 days ago
|
|
The big differences are:
1. Rust closures are by-value structs; whereas Java closures are heap objects.
2. Rust generics are monomorphized; whereas Java type-erases them -> lots of virtual call overhead when passing a closure to a generic function. Sometimes, if the Java JIT manages to inline absolutely everything, it can optimize away these overheads. But in practice, Rust FP gets optimized a lot more reliably than Java FP. |
|