MPL Bytecode Compiler Code
Micro Programming Language - A Portable Language for Micro Computers
Status: Beta
Brought to you by:
buzzphp
;LIBDEF )VECCLR(D,L) [L-->0@D!L=0;D] )VECSET(D,L,V) [L-->0@D!L=V;D] )VECCPY(D,S,L) [L-->0@D!L=S!L;D] )VECMOD(D,S,L,F) [L-->0@D!L=F(S!L);D] )VECMOV(D,S,L;I) [D<S?[I=0;I<L@[D!I=S!I;++I]],D<>S?L-->0@D!L=S!L;D] )VEC.HEAP=0 )VECHEAP(V,L)[VEC.HEAP=V;!V=--L*.INT;V!L=0] )VECUSED(;V,L)[L=0;V=VEC.HEAP;!V@!V<0?[L-=!V;V-=!V],V+=!V;L] )VECNEW(N;V,R) [N=(N+1)*.INT;V=VEC.HEAP;!V@[ !V<0@V-=!V;R=V;!V>0@V+=!V;!R=V-R;N<=!R?[!(R+N)=!R-N;!R=-N;=R+.INT] ]] )VECEND(V)V?V!-1<0?V!-1=-V!-1 )MALLOC(L)VECNEW((L+1)/.INT) )FREE(V)VECEND(V)