dest_gabs : term -> term * term
# dest_gabs `\(x,y). x + y`;; val it : term * term = (`x,y`, `x + y`) # dest_gabs `\(CONS h t). h + 1`;; val it : term * term = (`CONS h t`, `h + 1`)
# dest_gabs `\x. x`;; Warning: inventing type variables val it : term * term = (`x`, `x`)