Committed with changes:
- Refactor to avoid code duplication and CUDA performance regression
- Match code style
- Hide Exponent socket when not used
- Eliminate Minkowski 1/2 and 4, these are just different exponent values
- Fix GLSL shader to at least compile, but support for these new setting is still missing in viewport/Eeevee
Note this is not needed, OSL string comparisons are fast and in this constant folded away entirely.