Personal tools
You are here: Home Glossary

Glossary

Document Actions
  • A
  • B
  • C
  • D
  • E
  • F
  • G
  • H
  • I
  • J
  • K
  • L
  • M
  • N
  • O
  • P
  • Q
  • R
  • S
  • T
  • U
  • V
  • W
  • X
  • Y
  • Z
 Source code
(Or "source", or rarely "source language") The form in which a computer program is written by the programmer. Source code is written in some formal programming language which can be compiled automatically into object code or machine code or executed by an interpreter.
(1995-01-05)
 Algorithm
From Dennis Howe's Free Online Dictionary of Computing , last updated 1996-04-06:
A detailed sequence of actions to perform to accomplish some task. Named after an Iranian mathematician, Al-Khawarizmi.
Technically, an algorithm must reach a result after a finite number of steps, thus ruling out brute force search methods for certain problems, though some might claim that brute force search was also a valid (generic) algorithm. The term is also used loosely for any sequence of actions (which may or may not terminate).
Samuelson credits Gottschalk v Benson with the origin of the use of the word algorithm in relation to computer-related inventions. The court in Benson define an algorithm as "a procedure for solving a given type of mathematical problem". An algorithm is not necessarily limited in scope to mathematics however, with Christie and Syme pointing out that "all step-by-step" processes are involve algorithms in the broad sense". Christie and Syme go on to define 5 essential features of an algorithm: definition, finiteness, input/output, effectiveness and order.
- See Christie and Syme "Patents for Algorithms in Australia," [1998] Sydney Law Journal 517 at 518-521.
 Software
From Dennis Howe's Free Online Dictionary of Computing, . Last updated 1998-06-04:
(Or "computer program", "program", "code") The instructions executed by a computer, as opposed to the physical device on which they run (the "hardware").
Programs stored on non-volatile storage built from integrated circuits (e.g. ROM or PROM) are usually called firmware.
Software can be split into two main types - system software and application software or application programs. System software is any software required to support the production or execution of application programs but which is not specific to any particular application. Examples of system software would include the operating system, compilers, editors and sorting programs.
Examples of application programs would include an accounts package or a CAD program. Other broad classes of application software include real-time software, business software, scientific and engineering software, embedded software, personal computer software and artificial intelligence software.
Software includes both source code written by humans and executable machine code produced by assemblers or compilers. It does not usually include the data processed by programs unless this is in a format such as multimedia which depends on the use of computers for its presentation. This distinction becomes unclear in cases such as spread sheets which can contain both instructions (formulae and macros) and data. There are also various intermediate compiled or semi-compiled, forms of software such as library files and byte-code.
Some claim that documentation (both paper and electronic) is also software. Others go further and define software to be programs plus documentation though this does not correspond with common usage.
The noun "program" describes a single, complete and more-or-less self-contained list of instructions, often stored in a single file, whereas "code" and "software" are uncountable nouns describing some number of instructions which may constitute one or more programs or part thereof. Most programs, however, rely heavily on various kinds of operating system software for their execution.
by admin last modified 2008-12-13 18:09
 

Powered by Plone, the Open Source Content Management System.