constant folding select
tests
tail calls
dead var elimination