Talk:Computer program

Active discussions
Computer program 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.
Article milestones
November 4, 2007Good article nomineeNot listed
November 9, 2007Good article nomineeListed
November 17, 2007Good article reassessmentDelisted
Current status: Delisted good article

How computer programs relate to algorithmsEdit

The following sentence is vague: "A small part of a computer program that performs a well-defined task is known as an algorithm." What does "a small part" mean? I found a textbook definition of algorithm and replaced this sentence with the definition. I also used words to couple algorithm to computer program. "A programmer implements algorithms with computer programs." Okay, maybe I should have written, "Programmers generally use algorithms to build programs." But that was reverted, also. What's wrong with my edits? Timhowardriley (talk) 15:37, 17 October 2015 (UTC)

I moved Ruud's personal talk page comment to here for discussion: He said, "Concerning the third paragraph of the lede of Computer program: the intention of mentioning algorithms there is to succinctly relate that concept to computer programs and direct the reader to the article Algorithm for further information. It does not intend to give a precise definition of an algorithm, as the quoted source tried to do.
Ruud 16:43, 17 October 2015 (UTC)" Timhowardriley (talk) 17:47, 17 October 2015 (UTC)
However, I believe more specific information is better, if it's available. And a textbook definition of algorithm best serves the reader. There still can be a Wikilink to its article. Timhowardriley (talk) 17:58, 17 October 2015 (UTC)
Again, I moved Ruud's personal talk page comment to here for discussion: He said, "'Computer programmers implement algorithms with computer programs.' (or 'Programmers generally use algorithms to build computer programs.') is an awkward sentence. It doesn't feel natural in that paragraph. If I try to put the phrase 'computer program' back into 'An algorithm is a clearly specified set of simple instructions to be followed to solve a problem.', then I end up with almost the original sentence. —Ruud 18:59, 17 October 2015 (UTC)" Timhowardriley (talk) 20:34, 17 October 2015 (UTC)
Ruud, I interpret your viewpoint as: the current sentence, although a little white-washed, is sufficient enough information for the broadest audience to grasp, considering it's in the lead. Is this correct? Timhowardriley (talk) 20:40, 17 October 2015 (UTC)
Yes, I think it's accurate enough for its purpose. I don't immediately see a good way to make that sentence more precise, without it becoming very long-winded. But I'm open for suggestions. —Ruud 20:47, 17 October 2015 (UTC)

Number of digits in Analytical Engine store/memory wordsEdit

Timhowardriley There seems to be support for both 40 and 50 digit words in the Analytical Engine. I've started a discussion at Talk:Analytical Engine#Number of digits in store/memory words. As to what Babbage was thinking with such a large word size... My guess is he hadn't thought of floating point arithmetic, and 40 or 50 digits was what he thought was needed to cover the useful range of magnitudes of calculations. Rwessel (talk) 17:28, 30 October 2015 (UTC)

Very good. Timhowardriley (talk) 17:46, 1 November 2015 (UTC)

"Declarative programming language" is an OxymoronEdit

This text ----- Computer programs can be categorized by the programming language paradigm used to produce them. Two of the main paradigms are ... Imperative programming languages specify a sequential algorithm using declarations, expressions, and statements ... Declarative programming languages describe what computation should be performed and not how to compute it...

has a problem with the English language.

The word "program", handed down to us the ancient Greeks, is used for sequences of actions: what is to be played by the orchestra and in what order, the meeting rooms and their time, and so on.

We can write Fortran
and Fortran language
and Fortran programming language

The "-ing" attached to "program" turns it into an adjective, describing an attribute of "Fortran" - sequence.

But the "programming" following "Declarative" above is an oxymoron - there is no sequence. Unless, of course, the goal is to revise the English meaning of "program".

This article should be split into two articles:

 -- Computer imperative (programming) languages
 -- Computer declarative languages

If you look at the table of contents, much of the article applies only to programming languages; a split would benefit both sets of users. (talk) 05:48, 11 January 2016 (UTC)

It's okay to not be too technical. Timhowardriley (talk) 21:29, 11 January 2016 (UTC)
Whatever the roots, "program" is used to describe a wide spectrum of techniques, including the declarative ones. You'd be hard pressed to find anyone, for example, to argue that Prolog is not a programming language or that something written in Prolog is not a program. Rwessel (talk) 06:03, 12 January 2016 (UTC)

Added information needs developmentEdit

I removed "(an intermediate representation of the decoded code, such as Python's .pyc files, may be stored for efficiency purposes)" and "(It is possible to build a REPL on top of a compiler, as the Scala REPL does, but this involves the overhead of full compilation.)" because the extra information needs to be developed. Timhowardriley (talk) 19:13, 27 March 2017 (UTC)

I also removed "(less relevant these days, when interpreters are typically redistributable without charge)". This is a point of view. And I removed "which compile Java code to native machine code ahead of time,". Information should be presented in pieces, not one long concept. Timhowardriley (talk) 19:22, 27 March 2017 (UTC)


what is the future of networking ?

ANS -based on the progress mode in the recent past networking seems to be moving ahead toward nomadic  computing smart spaces.
Nordic  computing refers  to the technology that enables and  users who travel from place to places  to gain access to  internet  services in a transparent way  .   the availability of lightweight,    inexpensive . high performance , portable  devices and   availability on internet has enabled us to become normads.  — Preceding unsigned comment added by (talk) 15:52, 9 October 2018 (UTC) 

Moved two 'Simultaneous execution' paragraphs to talkEdit

I moved these two paragraphs to talk because the sentences contain multiple subjects and need to be shortened.

Multiple lines of the same computer program may be simultaneously executed using threads. Multithreading processors are optimized to execute multiple threads efficiently, due to having more than one processor which can either be a Multi-core processor or a computer that has more than one CPU installed. These Multi-core processors will have multiple cores where each core is a processor that has it own set of threads. Multi-core processors are actually more energy efficient than a single core CPU, because multi-core processors have certain cores that are more energy efficient, which in turn with the ability to multitask and delegate tasks to different cores actually decreases the amount of energy used by the CPU.

Most programming languages include a certain Library (computing) that allows programmers to now execute their code in parallel using multithreading. Once a program is properly parallelized by the programmer, its up to the user of the software's CPU to determine which cores and threads are used. After the user reaches a certain amount of cores in their CPU, Diminishing returns occurs where the increase in core count has very little if any effect to increasing the speed of the execution of the program, these diminishing returns can be measured by Amdahl's law. Timhowardriley (talk) 13:56, 9 November 2018 (UTC)

Moved Software Engineering's definition of computer program to talkEdit

Moved removed this from the lead:

In software engineering, code refers to computer instructions and data definitions expressed in a programming language or in a form output by an assembler, compiler, or other translator to express a computer program in a programming language.[1]

The lead should be a road map to the rest of the article. Moreover, why is the citation the entire book? Timhowardriley (talk) 17:45, 11 April 2019 (UTC)

"Computervprogram" listed at Redirects for discussionEdit

A discussion is taking place to address the redirect Computervprogram. The discussion will occur at Wikipedia:Redirects for discussion/Log/2020 May 16#Computervprogram until a consensus is reached, and readers of this page are welcome to contribute to the discussion. TheAwesomeHwyh 00:20, 16 May 2020 (UTC)

  1. ^ ISO/IEC/IEEE International Standard - Systems and software engineering. ISO/IEC/IEEE 24765:2010(E). pp. vol., no., pp.1-418.
Return to "Computer program" page.