Talk:Programming language/Archive 2

message: In the table, Lisp is listed as strong while Scheme is listed as weak.  At a minimum it would seem to me that the two should be the same.  Within Wikipedia Lisp and Common Lisp are listed as dynamically typed, without mention of strong or weak typing.  Discussion on the scheme programming language page leans towards calling it strong, although it acknowledges that usages in the literature differ.
I think we should try to establish a consistent usage within Wikipedia at least, preferably backed up by references.  Can anyone help with this?  Ideogram 14:00, 31 May 2006 (UTC)
thread_title:  strong typing vs. weak typing in Scheme and Lisp 

message: I intend to merge content from User:K.lee's infamously delayed rewrite into this article.  This will entail major changes.  If you have any opinions or suggestions, especially related to k.lee's rewrite, now is the time to discuss them.  Ideogram 04:02, 1 June 2006 (UTC)
replies: text: I'm not fully sure what the status is on everything, so if what I say isn't relevant, I apologize. In both the current and the merge articles, the "Type system" section refers to a main article. In both articles, the text that follows seems far too long. Since we're referring to a main article, the text that follows should only give a very cursory overview of the subject. Compare to the "Data structures" section in either article, which is of a much more appropriate length, I think. – Zawersh 07:58, 4 June 2006 (UTC)
replies: text: Yes, it is quite long but it is broken up into subsections static/dynamic and weak/strong.  The article referred to is quite long and more detail than most people want.  I think a section of about one page is long but not too long.  These concepts are important to understanding programming languages.  Does anyone else have an opinion?  Ideogram 08:05, 4 June 2006 (UTC)

text: I have stripped away a lot of excess detail and tightened up the writing.  The result is about half the size.  What do you think?  Ideogram 05:08, 5 June 2006 (UTC)
thread_title:  prepare for major changes 

message: I am trying to revive Wikipedia:WikiProject Programming languages.  Ideogram 16:39, 3 June 2006 (UTC)
thread_title:  WikiProject Programming languages 

message: Notes on my recent change:
*Algol was developed in Europe by a consortium of Americans and Europeans.  I think PL/I was developed at IBM's lab in Stuttgart Hursley (England), presumably with input from the rest of the company.  PL/I may have won for political reasons, but it was not only because Algol was perceived as "European".  See, for example, the reasons the MULTICS project chose PL/I.
::Agreed, not only -- but a major cause (but only mentioned in a comment, anyway). quota
*PL/I has not influenced later language design on a scale comparable to Algol.  If you do a diff between Algol and PL/I, very little of that diff survives in later languages, whereas a great deal of the Algol core does.
::Given that many of the keywords are the same, it's hard to be definite.  However, certain key words  such as real and begin from Algol have died out almost completely, whereas the PL/I equivalents (float and do) are ubiquitous, and many scripting languages (such as the REXX family) follow PL/I closely. quota
*PL/I notation is not widely used in pseudocode.  Look at the code examples in the PL/I article.  This doesn't look much like the pseudocode used in, say, Knuth or Cormen/Leiserson/Rivest/Shamir.
::Those are all 'academic' sources (which certainly do tend to follow Algol, due to its use by ACM, etc.).  In commercial programming, PL/I-like code and pseudocode are prevalent. quota
*I don't see any harm in selecting a few languages that were influenced by Algol.  I chose Simula, Scheme, Pascal, and Modula because
*#The influence in these cases is especially obvious; all except Scheme adopt and extend Algol syntax, and all incorporate arbitrarily nested block-scoped procedures.
*#They were directly influenced, as opposed to indirectly influenced via another language.
*#These languages have, in turn, been influential in the design of other languages
:Not many languages satisfy these three criteria.  It can be argued, for example, that Java was influenced by Algol, but Java's direct antecedents were Smalltalk and C++, not Algol.  By contrast, the Scheme designers adopted lexical scoping directly from Algol; at its inception, Scheme was essentially Lisp + Algol.
::OK. quota
--- k.lee 20:29, 3 June 2006 (UTC)
thread_title:  PL/I and Algol 

message: :Copy of whole text: /Purpose
I've been asked to take a look at this dispute.  At first brush, it seems to me that the "Purpose" section contains several relevant concepts that are not elsewhere addressed in the article.  There is a bit too much of a advocacy tone in the section, I think, but the general idea of pointing to the requirement for formalism and contrasts with natural and other artificial languages/codes seems quite relevant.  I think maybe it could use a little bit of tweaking, but in general the section should be restored. LotLE×talk 01:04, 5 June 2006 (UTC)
thread_title:  Should be restored 

message: I would like to thank all of you participating in editing and discussing this document, even the ones I disagree with.  It is exhilarating to work with equally talented peers on a subject of shared interest.  Ideogram 04:12, 5 June 2006 (UTC)
thread_title:  thank you all participants 

message: I propose that the content from the History section be merged into History of programming languages. Right now, that article is a skeleton without much content. It has the potential for being a rich article, and it would allow for greater detail to be included than would be appropriate for this article. The history section in this article could then be either condensed or left as is, but with a link to History of programming languages as the main article for the section. Any thoughts? – Zawersh 13:20, 5 June 2006 (UTC)
replies: text: I've copied the history section to the history article, weaving in the bits of possibly useful content that were already there. If anyone objects, feel free to revert and provide feedback either here or in the history article's talk page. I'm not too knowledgeable on the history myself, so I won't be able to expand it much myself, but hopefully it will encourage additional contributions. Given that there's so much conflict at the moment, I'm going to hold on off doing anything in this article until things have calmed down some lest I introduce another point of contention. – Zawersh 03:56, 6 June 2006 (UTC)
replies: text: Thank you.  Ideogram 03:57, 6 June 2006 (UTC)
thread_title:  History merge 

message: This is currently a broken link.  Does anyone intend to write this article?  If not, I prefer not to include it.  Ideogram 20:50, 5 June 2006 (UTC)
replies: text: Added a stub.  Not entirely satisfying, but IMO this is important to have an article that unifies the common material in compiler, interpreter, virtual machine, etc., and adds some discussion of the principles of runtime systems and other pragmatics.  See the category for a subset of the stuff that should be discussed in programming language implementation eventually. k.lee 21:35, 5 June 2006 (UTC)
thread_title:  programming language implementation 

message: I see some "votes" above, but it's not clear exactly what they are "approving" of.  I believe a clarification would allow the votes to be more meaningful.  How about:
:Should a section entitled "purpose" be included in this article?  If included, such a section would attempt to highlight differences between a programming language as formalized artificial language and a natural language.  In particular, such a section would emphasize the relative error intolerance of programming languages and their ability to instruct a computer to carry out computations.
==== Support inclusion ====
# LotLE×talk 02:12, 6 June 2006 (UTC)
thread_title:  Quick poll on "purpose" section 

message: # LotLE×talk 02:12, 6 June 2006 (UTC)
thread_title:  Support inclusion 

message: Not sure where to put this (useful) text I removed; when I replaced the section on "specification" (which includes both syntax and semantics, as well as lots of other stuff) with "semantics":
* a description of the language's syntax and semantics (e.g., C language).  The latter usually lists the results of performing an operation and restrictions on the kinds of operations that can be performed.
* a description of the behavior of a translator (e.g., C++).  The syntax and semantics of the language have to be inferred from this description.
* a definition in terms of an executable specification (e.g., Prolog), often written in that language.
Perhaps "implementation" should be broken out as a separate section; as it's frequently useful to view programming languages as abstract machines apart from their actual realizations; formal specifications of programming language implementations probably goes there.  Plus, use of reference implementations as a means of specification has been ommitted.  --EngineerScotty 00:03, 6 June 2006 (UTC)
thread_title:  Looking for a home 

message: I feel these entries might be too detailed and theoretical for the article.  In the textbook references I listed formal methods of specifying semantics are barely mentioned.  How often are they really used in industry?  I suppose I should read the specifications listed by k.lee above.  Ideogram 00:08, 6 June 2006 (UTC)
thread_title:  semantics 

message: We should probably move the taxonomies section to a main article Programming language taxonomy or something. k.lee 01:19, 6 June 2006 (UTC)
replies: text: Is there any reason to create a new article Programming language taxonomy when Categorical list of programming languages already exists? --Allan McInnes (talk) 01:47, 6 June 2006 (UTC)
replies: text: Allan McInnes I think this article is current under siege by a few people with a small amount of knowledge and an unwillingness to spend time reading up on this subject. Derek farn 02:05, 6 June 2006 (UTC)
replies: text: Great, go start your own wiki.  Ideogram 02:11, 6 June 2006 (UTC)
replies: text: How about we all try to keep things civil, and avoid personal attacks? --Allan McInnes (talk) 02:25, 6 June 2006 (UTC)
replies: text: I would like to request that User: Derek farn try to avoid sarcasm in his edit summaries.  Ideogram 02:31, 6 June 2006 (UTC)

text: The categorical list of programming languages is an alphabetized laundry list.  I was hoping that it would be possible to produce an article on programming language taxonomy that a human being could conceivably read.  It is clear that the categorical list will never become such an article.  k.lee 02:39, 6 June 2006 (UTC)
replies: text: There are at least two people working on that right now.  I think they would welcome your help.  Ideogram 02:46, 6 June 2006 (UTC)

text:  I fully support the idea of making Programming language taxonomy its own article. I don't think Categorical list of programming languages is well suited to becoming an actual article, and its title isn't all that appropriate for such an article either. I've been working at transitioning the content in the categorical list into the category system (as well as cleaning up the list). Perhaps if we had a good taxonomy article and the list was redundant through the categories, we might be able to drop the categorical list eventually. – Zawersh 03:25, 6 June 2006 (UTC)
thread_title:  Move taxonomies 

message: I have submitted this dispute to medcabal.  I suggest we all leave these pages alone until they get to us.  Ideogram 02:51, 6 June 2006 (UTC)
replies: text: Mediation Cabal request is here, for anyone interested. --Allan McInnes (talk) 02:56, 6 June 2006 (UTC)

text: I think Derek Farn has indeed gone a bit overboard with reverts and snide edit comments... but I also know Ideogram is pretty new around here.  Cooling down and chilling out is always a good idea, but this disagreement is hardly a ripple in the general sea of disputation among WP editing. LotLE×talk 03:01, 6 June 2006 (UTC)
replies: text: LOL so the worst is yet to come ... Ideogram 03:03, 6 June 2006 (UTC)
replies: text: Not necessarily on this article. But LotLE is right, there are plenty of ongoing disputes on WP. Take a look at the history and talk pages for Muhammad ibn Musa al-Khwarizmi sometime... --Allan McInnes (talk) 03:22, 6 June 2006 (UTC)
replies: text: I prefer to stick to technical matters.  Ideogram 03:26, 6 June 2006 (UTC)
thread_title:  Mediation Cabal Request 

message: The advice to new wikipedians is be bold, and in this area I have actual expertise, so I was.
It was labelled as a stub that needed work, so I had a go. Assuming it to be outside the realm of prior recent edit wars. On looking at it in context it now has more words than it should, and so implies excessive importance relative to other ideas on the page. Perhaps they are needed, (the idea is inherently complex as it being part of a language is a bit fuzzy), perhaps all the words are not. Being my words I cant tell.
Feel free to 'fix' it, radically.
AccurateOne 05:58, 6 June 2006 (UTC)
replies: text: I don't think standard libraries are suposed to provide platform specific implementation. Thats the job of the interpreter. Stdlibs contain commonly used objects, etc, so programers don't have to do them themselves. Ex: Java. Jaxad0127 06:07, 6 June 2006 (UTC)

text: I was also bold and condensed it pretty strongly. Some of the stuff I cut out (such as some of the references to encapsulation) seems better suited to the standard library article. I also removed some of the stuff that either seemed technically inaccurate or too subjective (though I'm not certain that I fully avoided those traps myself!). If you think something I removed is vital for this article (as opposed to the standard library), feel free to re-introduce it. Hopefully I didn't over-condense. – Zawersh 06:44, 6 June 2006 (UTC)

text: I thought I had responded here, but thanks you removed the right stuff. I have now removed the secstub tag as presumably it isnt now. AccurateOne 08:07, 10 June 2006 (UTC)
thread_title: Standard Library

message: Derek farn, if you still want to discuss this, we can pick it up here.
The current "purpose" section covers these points:
*Programming languages facilitate communication
*Programming languages are different from natural languages
*Programming languages are executable
*Many languages are needed for different contexts
*Programming languages have become higher level
Which subtopics do not belong here?  Ideogram 09:55, 8 June 2006 (UTC)
replies: text: Whoops -- see comments above, please?  kraemer 03:46, 14 June 2006 (UTC)
thread_title:  "Purpose" discussion 

message: It seems to me this subsection doesn't say anything, and should be either expanded or deleted.  Ideogram 11:11, 8 June 2006 (UTC)
thread_title:  design philosophy