Talk:Programming language
![]() | Programming language was one of the Engineering and technology good articles, but it has been removed from the list. There are suggestions below for improving the article to meet the good article criteria. Once these issues have been addressed, the article can be renominated. Editors may also seek a reassessment of the decision if they believe there was a mistake. | |||||||||||||||||||||
|
![]() |
This article is of interest to the following WikiProjects: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Article scope too limited: assuming machines and computers
Currently this article assumes that programming language is a phenomenon exclusive to machines in general, and computers in particular.
This assumption seems inappropriate, given that there is at least one widely-recognized counterexample: biological programming languages:
See e.g.
- http://news.mit.edu/2016/programming-language-living-cells-bacteria-0331
- http://reliawire.com/biological-programming-language/
dr.ef.tymac (talk) 18:13, 29 April 2017 (UTC)
- Did you read more about it?
- Programming biological systems is a metaphor.
- The work you cite is not as recent as you think, it is part of an area called Synthetic Biology.
- Synthetic biology tries to apply real engineering principles to genetic engineering.
- Biological systems, however, are complex systems. They can not be programmed them in the same sense that computers are, because you can not program emergent properties just designing a DNA chain. Not even composing known biological pathways isolated and standardized as Biobricks, as synthetic biology works.
- There are however other computing forms, like quantum computing, there is an ongoing research on it. Even a DNA computing, which encodes problems in DNA chains and place them to evolve in a thermo-cycler for PCR and device a way to isolate the chain with the answer. — Preceding unsigned comment added by 201.124.211.115 (talk) 05:10, 11 June 2017 (UTC)
This article is a total mess!
It repeats many common places, many of them wrong!, but repeated again, and again, in many programming courses given in basic education based on outdated information. Also many "complete idiot's guide", "learn in N days" or "for dummies" like those in the photo with tech books, repeat again and again.
Many people know some programming language and write code. That does not make then an authority in the subject. However many of them feel they are.
This article seems written from notes taken in basic programming courses.
Has discussions like: How many angels can be in the tip of a needle? — Preceding unsigned comment added by 201.124.211.115 (talk) 05:53, 11 June 2017 (UTC)
yep too much information unrelated to the core subject and which does not help understanding. this needs to moved to relevant topics.
For example, the paragraph in FLOW-MATIC adds nothing to understanding what a computer language is and should be in the topic on Flow-matic, not programming.
there are also too many competing ideas, such as the definition of a programming language that just confuse things. My view is that Wikipedia should focus on commonly accepted facts and theories rather than pet issues insered by Academics to try and give exposure to very minority theories. it is a to help understanding, not a weapon in obscure Academic debates and personal obsessions. 60.241.211.27 (talk) 12:07, 28 July 2021 (UTC)
Defining the term "programming language" properly
Wikipedia currently says a "programming language" is "a formal language that specifies a set of instructions that can be used to produce various kinds of output" which is true-ish, but vague. The phrase "various kinds of output" hints at the relevant characteristic, but still doesn't pin it down. Dictionary.com defines a "programming language" as "a high-level language used to write computer programs, as COBOL or BASIC, or, sometimes, an assembly language." This gibberish dances around it for a moment... but it makes no difference whether it is the highest-level symbolic meta-language or lowest-level machine code. An alternate Dictionary.com definition starts getting closer, "a simple language system designed to facilitate the writing of computer programs" but simplicity has nothing to do with it either and this definition still doesn't capture the essence. The important nugget here is the specification of decision making. A "computer language" is any predefined set of symbols and syntax that allows people to communicate with a computer system. But a "programming language" is a language among the broader set of computer languages that specifically enables a person to specify decision-making rules. CPUs make logical (true/false) decisions. The specification of a logical decision-making process is where the rubber meets the road. As example, HTML is a computer language, but not a programming language. If I want my computer's clock to display upside down, but only on Tuesdays, I can't use HTML to accomplish that. Get it? (HTML is really just a data markup language used to specify the metadata and the semantic structure of a Web document.)
Shall I take a crack at rewriting the first paragraph on the "programming language" page and I'll let you all have a look? I won't spend too much time on it unless the community wants me to, so let me know what you think. — Preceding unsigned comment added by Dlampton (talk • contribs) 00:39, 8 January 2018 (UTC)
Broken refs
@Squoop: you used some ref names that don't exist in the Abstractions section. Could you please fill those in? -- Fyrael (talk) 21:58, 10 October 2022 (UTC)
"Semantics" is singular
A recent edit by Sumanbalayar corrected if computational semantics is defined
to if a computational semantics is defined
, but it was reverted by Girth Summit. Using "semantics" as singular is standard in the field, for example:
- Pierce, Benjamin (2002). Types and Programming Languages. p. 111. ISBN 0-262-16209-1.
We first define the terms, then define a semantics showing how they behave, then give a type system that rejects some terms whose behaviors we don't like.
I favor Sumanbalayar's version of this sentence. Freoh (talk) 16:20, 5 January 2023 (UTC)
- Fine to reinstate it if you like; it looked like a well-meaning but incorrect tweak to me, but you seem to know what you're talking about. Girth Summit (blether) 16:51, 5 January 2023 (UTC)
Done. Freoh (talk) 17:01, 5 January 2023 (UTC)
- Don't know if you noticed, but there were quite a few other tweaks I reverted in that edit - feel free to review them and reinstate if you think I erred. Girth Summit (blether) 17:33, 5 January 2023 (UTC)
Standard examples
It would be helpful if there were a small set of "standard" tasks and all pages on programming languages showed how to do them all (e.g., compute prime numbers, compute the squares of the numbers 1 to 10, print "Hello, world!"). Where should I suggest this? LachlanA (talk) 01:00, 21 January 2023 (UTC)