Microsoft patching a compiled binary to fix a security issue: https://0patch.blogspot.co.uk/2017/11/did-microsoft-just-manually-patch-their.html
Adding an additional parameter without changing the instruction count of functions is no mean feat!
miniblog.
Related Posts
Playing with optional type signatures in Python, I realise that the return type is the most important to me.
I'd much rather have a function with only a return type instead of a function with only parameter types. It's often quick to add too.
I'm not sure how I feel about languages with auto currying.
Upside: Partial application is easy.
Downside: It's common to miss a parameter when refactoring, and errors can be unclear.
Upside: You can be generic on functions: a -> b.
Downside: An a -> b isn't very useful.
Rust's model of references confused me when I started out. I'd read that they were faster, so I tried to use them everywhere. You can't return a reference to a new vector though!
Now I see them as primarily useful for signalling 'this parameter is not modified' rather than perf.