Now I think of it, it may be tricky to block other JVM languages from extending the base type 🤔
I wouldn't recommend it for simple ADTs bit there are certain use cases that could benefit from the split.
That said, in many cases we can be reduced in size by extracting behaviour with ext funs and the like. I was just wondering about any technical or design limitations, that's all 😁