Mercurial > repos > rhope
view kernelbase.rhope @ 136:fc3815b7462f
Javascript backend now produces working code for some simple examples, still more of the standard lib that needs to be ported.
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 14 Nov 2010 23:07:55 -0500 |
parents | |
children |
line wrap: on
line source
Val[in:out] { out <- in } Blueprint Int32 { Num(Int32,Naked) } If@Int32[num:yes,no] { yes,no <- If[[num]!=[0i32]] } Trunc UInt8@UInt8[in:out] { out <- in } Blueprint UInt32 { Num(UInt32,Naked) } If@UInt32[num:yes,no] { yes,no <- If[[num]!=[0u32]] } Blueprint UInt8 { Num(UInt8,Naked) } If@UInt8[num:yes,no] { yes,no <- If[[num]!=[0u8]] } Abs@Int32[num:out] { If[[num]<[0i32]] { out <- [0i32]-[num] } { out <- num } } Mod[a,b:out] { out <- [a]-[[[a]/[b]]*[b]] } And[left,right:out] { ,out <- If[left] { out,out <- If[right] } } Or[left,right:out] { out <- If[left] {} { out <- right } } Min[a,b:out] { If[[a]<[b]] { out <- a }{ out <- b } } Max[a,b:out] { If[[a]>[b]] { out <- a }{ out <- b } }