You have to fix the scoring. Blacklisting eval is whack-a-mole forever. If you switch the scoring to use bytes of UTF-8 encoded text, that pretty much aligns everything. There might still be some use for packing data in string literals, but wholesale source code packing would probably mostly stop.