add walk iter and implement BindVar