C lacks the concept of constructors, making it hard to define global variables that are semi-constants in a foolproof way. Here's a trick I'm now using in Lwan, that might be useful for those wanting semi-constants that are initialized exactly once, or that are thread-local variables that require some kind of initialization.