idea of the asm.js typechecker by spec