04.August 2008 18:59Strongly typed, weakly typed, dynamically typed, statically typed?
Af en eller anden grund roder jeg altid rundt i hvad forskellen på de fire begreber i overskriften er, så har kopieret en forklaring fra diveintopython.org:
- statically typed language
- A language in which types are fixed at compile time. Most statically typed languages enforce this by requiring you to declare all variables with their datatypes before using them. Java and C are statically typed languages.
- dynamically typed language
- A language in which types are discovered at execution time; the opposite of statically typed. VBScript and Python are dynamically typed, because they figure out what type a variable is when you first assign it a value.
- strongly typed language
- A language in which types are always enforced. Java and Python are strongly typed. If you have an integer, you can’t treat it like a string without explicitly converting it.
- weakly typed language
- A language in which types may be ignored; the opposite of strongly typed. VBScript is weakly typed. In VBScript, you can concatenate the string ’12′ and the integer 3 to get the string ’123′, then treat that as the integer 123, all without any explicit conversion.