Sandboxed Java Bytecode pros: easy to use, can write in the same language the rest of the code is in performant, no extra runtime needed smol, no need to package a runtime cons: possibility of sandbox escape (unlikely, but it might happen) may allow OEEL to be used as a DRM
Compiled Java Code pros: cursed easy to use, no one likes kotlin anyways performant smol slightly lower possibility of sandbox escape cons: can still be used as DRM
Sandboxed Scripting Language pros: low possibility of sandbox escape harder to use as a DRM cons: harder to use, need to learn a seperate language slower need to package a runtime
Data Code pros: very low possibility of sandbox escape can't really be used as DRM cons: slow need to write a full on api most of the code will still probably have to exist in unencrypted code painful to use