• Abstraction = detached from concrete details
    • “Abstraction is selective ignorance” - Andrew Koenig

Modes of abstraction in compiler

  • Via languages/compilers: High-level code, few machine dependencies Via functions and subroutines: Abstract interface to behavior
  • Via modules: Export interfaces; hide implementation
  • Via classes/abstract data types: Bundle data with its operations