You should be able to write a meta circular VM in JavaScript that targets bare metal without any C or asm.