type system

September 3rd, 2003 at 10:32 pm

Are you *sure* you know what “dynamic typing” is ? How does explicit typing system differ from implicit ? Why can a typing system be strong and weak ?

I had some knowledge of this stuff, but it wasn’t really organized in my head (bet most of you feel the same). Today I found this on Lambda the Ultimate:

There are a lot of choices when designing a type system

Strong vs Weak

Strong: Impossible to treat an object as an wrong type

Weak: Possible to use improper operations on an object

Static vs Dynamic

Static: The type of an expression is known at compile time.

Dynamic: The type of an expression is only known at run time.

Explicit vs Implicit

Explicit: All variables and functions are explicitly typed (also called Manifest typing)

Implicit: The types of variables are implicit (also called Latent typing)

Many people argue ardently about this stuff while they don’t really understand the terms. I paste it here just to remember it :-)

Related posts:

  1. A taxonomy of typing systems
  2. Programming language typing - a big mishmash
  3. Reading C type declarations
  4. Lisp on one hand, Ada on the other
  5. SICP section 2.4

Leave a Reply

To post code with preserved formatting, enclose it in `backticks` (even multiple lines)