double-typed en toolkit for compilation