- map/fold - reduce - lisp-loop / reentr? depends on #18
depends on #18