I am sure it is some combination of `unsafeCompiler getCurrentTime` and
`formatTime defaultTimeLocale "%Y"` but I have not found the right arrangement.
If I do something like this:
let z = do
t <- getCurrentTime
pure $ formatTime defaultTimeLocale "%Y"
Then z is an IO String as I would expect, with the correct value.
Then I would need to enlist `unsafeCompiler` to move me from the IO to Compiler...
What am I missing?