I like that idea of using a (presumably unnamed) enum as a bag of constants that aren't necessarily related. From the small amount of Go I tried, its syntax for constants seemed a more evolved version of that.
What do you think is the minimum realistic preprocessor usage that can be got away with? #include + #pragma once?