A procedure-oriented language designed for solving complex scientific problems or for running complicated business applications.