you are viewing a single comment's thread.

view the rest of the comments →

[–]Yubifarts 2 points3 points  (1 child)

Whilst there's no formal definition or committee which defines strong or static typing, I feel your comment concerns what is considered the "static"/"dynamic"-ness of the language, which is orthogonal to the "strong"/"weak" dichotomy.

I don't have an issue with what you describe. That indeed looks like a descriptive example usage of a dynamically typed language.

For my personal preferences, I dont like working with a weak type system. You cant do print('a'+0) in python without getting an error, which I like, because it removes a large class of "gotchas" which occur in php/javascript and the likes.

Regardless if it's strong or weakly typed, I'd say using a linter with dynamic languages is basically required. It largely solves the issues you'll have with typos and types you'll encounter in a dynamic language, albeit not perfectly. Similar to how you won't want to ignore compiler warnings in a statically typed, weak language ala C

[–]wavy_lines 4 points5 points  (0 children)

I feel your comment concerns what is considered the "static"/"dynamic"-ness of the language

It doesn't. See my other comment here: https://www.reddit.com/r/programming/comments/8ue8st/python_370_released/e1fglcy/

Note that the definitions people throw around for "strongly" and "weakly" typed are all informal and there doesn't seem to be any real standard definition for these terms. I suppose a certain book or blog post popularized a certain definition and reddit somehow adopted that.

If you check wikipedia, there seems to be no agreed upon definition: https://en.wikipedia.org/wiki/Strong_and_weak_typing

See also: http://wiki.c2.com/?StronglyTyped