Now you have to make `f` nullable and you run the risk of not initialising it and getting a null pointer.
You can't do it in C, but in functional style languages you can do this:
let f = {
let bar = ...;
let baz = ...;
let barbaz = ...;
barbaz
};
Which is a lot nicer. But if you ask me it's just a function by another name except it still doesn't limit scope quite as precisely as a function.