Low level Virtual Machine bytecode manipulations. Including creating/modifying/optimizing/etc bytecode for various VMs. For example JVM, Python VM, Lua VM, etc.
Why?
Using some VM based programming languages for period of time usually leads to realising that some parts of the code aren't translated into bytecode efficiently, might be optimized for the specific VM even more or we just need some functionality which isn't implemented into standard bytecode compiler/interpreter/etc, like:
- bytecode encryption
- bytecode linkage
- etc.
Links:
More about bytecode:
- Basic description - Stackoverflow Wiki
- Description, examples, etc. - Wikipedia