Programming languages are designed to communicate with machines like computers. Programs are sets of instructions written in a programming language following its syntax to serve some purpose. C++ was developed in the 1980s as an object-oriented programming language. OOP views a problem in terms of objects rather than procedures. A programming language's character set includes letters, digits, symbols, and whitespace that it can recognize as valid characters. The smallest units of a program are tokens like keywords, identifiers, literals, operators, and punctuators.