support for long, float and double primitve types (incl. arithmetic); byte code optimised for constants