Type system .
. Languages can be divided into three categories with respect to the type:
- "untyped"
. No type checking needs to be done
. Assembly languages
- Statically typed
. All type checking is done at compile time
. Algol class of languages
. Also, called strongly typed
- Dynamically typed
. Type checking is done at run time
. Mostly functional languages like Lisp, Scheme etc.
Languages can be classified into three main categories depending upon the type system they employ. These are :
. Untyped : In these languages, there are no explicit types. Assembly languages fall into the category of these languages.
. Statically typed : In these type of languages, all the type checking is done at the compile time only. Because of this, these languages are also called Strongly typed languages. Example of languages in this category are Algol class of languages.
. Dynamically typed : In dynamically typed languages, the type checking is done at the runtime. Usually, functional programming languages like Lisp, Scheme etc. have dynamic type checking.
In this course, our main focus will be on statically typed languages, particularly imperative programming languages.
|