High Level Languages

High Level Languages (cont.)

   Data Type

   Typical Data Types

  Algebraic Specification

   Specification Structure

Specification
Operations

Operations on a List ADT

   List Specification

Recursion in Specifications

   Primitive Constructors

Operations on a Binary Tree

Binary Tree Specification

Binary Tree Specification (cont.)

Specification Enrichment

   Operations on New_list

   New_list Specification

   Multi-value Operations

   Queue Operations

   Queue Specification

   Key points

High Level Languages (cont.)

   Object-Orientation

Objects with Data and Functions

   Stack Example in C++

Template Example in C++

   Building up Classes

Inheritance and Overloading

   Overloading

   Polymorphism

   Polymorphism

   Summary