101Fermer103
onurLe 30/07/2008 à 10:40
js> function f(){ for(var i=0;i<45;i++){ print(i); } }

traduit en bytecode donne:
js> dis(f);
main:
00000:  zero
00001:  setvar 0
00004:  pop
00005:  getvar 0
00008:  uint16 45
00011:  lt
00012:  ifeq 33 (21)
00015:  name "print"
00018:  pushobj
00019:  getvar 0
00022:  call 1
00025:  pop
00026:  varinc 0
00029:  pop
00030:  goto 5 (-25)
00033:  stop

Source notes:
  0:     1 [   1] decl     offset 0
  2:     4 [   3] for      cond 7 update 21 tail 25
  6:    22 [  18] xdelta
  7:    22 [   0] pcbase   offset 7


edit: je poste ça pour dire qu'avec un VM correct, y a moyen d'avoir un interpreteur utilisable meme sur TI.