Talk:Strong and weak typing

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
WikiProject Computer science (Rated Start-class, Mid-importance)
WikiProject iconThis article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.
 
WikiProject Computing / Software (Rated Start-class, Low-importance)
WikiProject iconThis article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Low  This article has been rated as Low-importance on the project's importance scale.
Taskforce icon
This article is supported by WikiProject Software (marked as Low-importance).
 

Unclear introduction[edit]

The introduction should explain more clearly what weak typing and dynamically typed variables mean. 2.110.93.203 (talk) 07:00, 18 May 2018 (UTC)

Dead Source[edit]

Now I am not good with this wikipedia thingy, I'll be the first to admit to this. But it needs to be said that the source 6 (ftp://gatekeeper.research.compaq.com/pub/DEC/SRC/research-reports/SRC-045.pdf page 3) is no longer available. I've got no clue on how to fix this but it should be replaced with this URL: http://www.lucacardelli.name/Papers/TypefulProg.pdf . Sorry to bother you GeneralDenmark (talk) 07:32, 21 February 2017 (UTC)

 Done Thank you for the note. --Ancheta Wis   (talk | contribs) 12:16, 21 February 2017 (UTC)

OR[edit]

It looks like there's a lot of OR on this page. Since strong/weak typing doesn't have a single accepted definition, all examples should be backed by reliable sources, but most aren't. QVVERTYVS (hm?) 15:11, 17 June 2015 (UTC)

Yes, "strong" and "weak" typing is just an attempt to simplify Type_system#Type_checking.
I don't think any researcher would use "weak" and "strong" type terminology nowdays. Ushkin N (talk) 00:57, 22 May 2016 (UTC)


I've been researching the "etymology" of the terms strong and weak typing since a while. See my results so far at User:Ruud Koot/Computer science/Strong and weak typing. There isn't a universally accepted definition of those terms, but there are a small number of definitions that are often used. While contemporary researchers would rarely use these terms in a formal sense, they are still used in more colloquial speech. I think that a well-written article on this topic would be come too large to merge in its entirety into Type system (which should be an overview article, given the size of the topic). —Ruud 10:58, 22 May 2016 (UTC)

IMO, we shouldn't use them at Type system or Programming language pages.
I'd rather mark it as Category:Buzzwords (or similar) because it confuses so many concepts in type(s) (systems) under two words "weak" "strong" (or speakers using it).
Programming_language#Weak_and_strong_typing
Type_system#.22Strong.22_and_.22weak.22_type_systems
However, we can link them in "See also" section or mention in the article from time to time. But not to crate paragraphs for these 2 words everywhere. Ushkin N (talk) 12:35, 22 May 2016 (UTC)
I think people shouldn't be using the terms strong and weakly typed, but the (unfortunate) fact is that they do. And Wikipedia is descriptive, not prescriptive, so we should discuss them. I think the section Type_system#"Strong" and "weak" type systems is fine as is. It briefly states there is no universal definition and then refers to this article for the details. I think a lot can be said here about the many non-universally accepted definitions that have been given to these terms. The section Programming_language#Weak_and_strong_typing, is more problematic. It should probably read the same as Type_system#"Strong" and "weak" type systems. —Ruud 12:49, 22 May 2016 (UTC)
Criticism these 2 terms was never discussed or explained with sources.
Also any claim about "weak" or "strong" typed languages are hardly sourced since we cannot trace their definitions!
Humans can use many meaningless words, but that doesn't mean we should use these words to describe topic. Ushkin N (talk) 13:24, 25 May 2016 (UTC)
@Ushkin N, One approach to finding sources for usage would be to look up old programming books, say in Perl or C#, maybe 1995 or later. When the proponents of, say C#, were trying to push out the use of Perl (they have succeeded in lessening Perl usage) they used such terminology. Now that the debates are moot (JavaScript has increased usage, irregardless of its weakly typed status), it would probably help beginners in the field to learn what books to avoid. --Ancheta Wis   (talk | contribs) 14:02, 25 May 2016 (UTC)
@Ancheta Wis, I wasn't following C# since the beginning and not sure how to search within C# literature (coverage of the results would be hard to achieve). 42 hits - I'm doing it wrong IMO Ushkin N (talk) 16:24, 25 May 2016 (UTC)
We can trace the origins of these definitions! Again, see User:Ruud Koot/Computer science/Strong and weak typing#Literature review. The term "strongly typed" seems to have been introduced by Barbara Liskov in 1973/4 in her work on abstract data types. The term "weakly typed" by Demers et al. in "Encapsulated data types and generic procedures" (1977). Both give clear definitions of these terms. The only problem here is that later researchers and programmers gave and used several other definitions as well. —Ruud 17:14, 25 May 2016 (UTC)
1974 definition uses other "terms" with loose meaning "abstract type", "abstract object". It also misses terminology that can be found at Wikipedia articles.
BTW, any definition that ignores hardware/software implementation is incomplete and lies: it is only good as "theory".
OR was formally proven. I don't any formal proofs in Barbara Liskov publications. Ushkin N (talk) 17:47, 25 May 2016 (UTC)
Even if we can trace them, doesn't mean they are true. Many medal holders made imprecise statements, especially when field was rapidly developing. None of physics I know threat Newton laws as precise model of the real world, but that's off-topic here. Ushkin N (talk) 17:44, 25 May 2016 (UTC)
See WP:NOTTRUTH. There is no requirement that Wikipedia article are limited to describing "mathematically precise" definitions. —Ruud 18:27, 25 May 2016 (UTC)
WP:NOTTRUTH says you can include imprecise and verifiable to Wikipedia. But nothing prevents me from stating that something is incomplete or was never formally proven. WP:TRUTHMATTERS. Ushkin N (talk) 19:28, 25 May 2016 (UTC)

Coercion's definition by Aahz contradicts the definition in Type conversion[edit]

Type conversion#Implicit type conversion says (specifically WRT C-like languages) "Implicit type conversion, also known as coercion, is an automatic type conversion by the compiler", which contradicts Aahz's definition. In case the former definition is the one usually used (i am not an expert), i think that the reference to Aahz's example should be removed. Orenmn (talk) 15:44, 26 October 2017 (UTC)