I don't know if such constant is already defined (seems not), but you could use something like this: type Backend {.pure.} = enum C, CPP, OBJC, JS, PHP const backend = when defined(cpp): Backend.CPP elif defined(objc): Backend.OBJC elif defined(php): Backend.PHP elif defined(js): Backend.JS else: Backend.C
It is a bit tough to manage this as a user, so I think it would make sense to add such constant to system lib.