Roman Suzi
1 min readDec 16, 2021

--

As for definitions, it's covered here: https://en.wikipedia.org/wiki/Strong_and_weak_typing . Thus, Python is dynamically strong-typed language, where values have types, not variables. I would like to note here that most of the types can be deduced like in ML languages, much less to type manually. Some other languages (like Java and C++) were not designed to be writing programs manually in, but for code generation tools...

As for large projects, they can also can be written in whatever language. Inexperienced programmers will find the way to introduce bugs, type-checking will not stop them as type-checking does not guarantee correctness.

As for what to learn first, here I would not argue. Myself I learned from low-level to high-level (from machine code). For fundamental education it makes sense. Depends also on who the students are. If it's important to prepare them for really hard problems, then they can be exposed to more inconvenient languages. If they are not into serious math/computer science, then scripting suffices.

--

--

Responses (1)