Lecture overview -- Keyboard shortcut: 'u'  Previous page: Types -- Keyboard shortcut: 'p'  Next page: Lists [Section] -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Lecture 1 - Page 10 : 49
Programming Paradigms
Introduction to Functional Programming in Scheme
Typing and Typecheck

On this page we will provide a possible overview of different kinds of typing and typecheck

There is no overall and univeral agreement on the definitions of weak/strong/static/dynamic typing

  • Typed/untyped

    • Typed: Operations are only applicable to data of specified types

    • Untyped: Any operation can be performed on any type of data

  • Strong/weak

    • Strong: Types are strictly enforced. Operations performed on wrong types of data leads to an error.

    • Weak: Values of one type can be treated as values of another type

  • Static/dynamic

    • Static: Type checking is done before the program is executed

    • Dynamic: Type checking is done at run-time

Scheme is (relatively) strongly and dynamically typed