Things you can’t do you in Rust: fungible functions
medium.com