> I dislike the "static" word, it's too vague. Would be better to call it > "typed vs untyped".
That would be completely unhelpful. **static** means that type checks are performed before the program is run, **dynamic** means the checks are performed during execution. To make that clearer, in a hypothetical compiled Python (or JS or whatever) a line with a type error will only reveal that error if the code path is executed. In an interpreted (but still statically typed) Nim, that line could never be executed because the type checker rejects the program containing it. Also, dynamically typed languages are not _untyped_. Julia is dynamic and has a rich type system, including parametric types.