A mechanism by which a program can manipulate data structures of any format, without knowing what that format might be.