(bind-func BTree_walk_postorder:[void,BTree{!v}*,[void,!v]*]*
(lambda (tree fn)
(if (null? tree) null
(begin
(BTree_walk_postorder fn (BTree_left tree))
(BTree_walk_postorder fn (BTree_right tree))
(fn (tref tree 0))))))