Add folds, implement exec{T,G}