Mercurial > repos > tabletprog
view src/kernel.tp @ 45:2a9c6eed0c70
Move closure/lambda object def into compiler rather than runtime code. Add while:do method to lambda
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Fri, 13 Jul 2012 00:23:38 -0700 |
parents | 96e21f525b78 |
children |
line wrap: on
line source
/* array <- #{ new <- { length <- 0 #{ each <- :fun { repeat: length :idx { fun: idx (get: idx) } } } } } */ true <- #{ if:else <- :self trueblock :elseblock { trueblock: } } false <- #{ if:else <- :self trueblock :elseblock { elseblock: } } filter <- :arr pred { output <- arr slice: 0 0 each: arr :idx el { if: (pred: el) { output push: el } else: {} } output }