Get it on Google Play
New! Download Unionpedia on your Android™ device!
Faster access than browser!


Index Subroutine

In computer programming, a subroutine is a sequence of program instructions that performs a specific task, packaged as a unit. [1]

136 relations: Ada (programming language), Adjective, AI Memo, ALGOL, ALGOL 60, Assembly language, Asynchronous procedure call, BASIC, Boolean-valued function, Branch table, C (programming language), C Sharp (programming language), C++, Call site, Call stack, Calling convention, CICS, Circular reference, Class (computer programming), Closure (computer programming), Code refactoring, Code reuse, Command–query separation, Compiler, Computer data storage, Computer file, Computer programming, Coroutine, Data descriptor, Data structure, Data type, David Wheeler (computer scientist), Decomposition (computer science), Determinant, Divide and conquer algorithm, Duplicate code, Dynamic dispatch, Evaluation strategy, Event (computing), Exception handling, Expression (computer science), Fibonacci, Forth (programming language), Fortran, Function (mathematics), Function overloading, Function prologue, Functional programming, Garbage collection (computer science), Global variable, ..., Guy L. Steele Jr., Haskell (programming language), High-level programming language, Housekeeping (computing), HP 2100, IBM, IBM 1130, IBM 1620, IBM Personal Computer, IBM System/360, Identifier, Imperative programming, Indirect branch, Information hiding, Inline expansion, Intel 8008, Interrupt, John McCarthy (computer scientist), Lazy evaluation, Library (computing), Link register, Lisp (programming language), Logarithm, Logic programming, Lotus 1-2-3, Macro (computer science), Manchester Baby, Mathematical induction, Matrix (mathematics), Maurice Wilkes, Method (computer programming), Modular programming, Nested function, Noun, Object (computer science), Object-oriented programming, Operator overloading, Overhead (computing), Parameter (computer programming), Pascal (programming language), PDP-1, PDP-11, PDP-8, Peripheral, PIC microcontroller, PL/I, Processor register, Program optimization, Programming language, Pseudorandom number generator, Punched card, Punched tape, RCA 1802, Recursion, Recursion (computer science), Reduced instruction set computer, Reentrancy (computing), Return address, Return code, Return statement, Scala (programming language), Scope (computer science), Self-modifying code, Side effect (computer science), Software maintenance, Stack (abstract data type), Stack overflow, Stanley Gill, Statement (computer science), Strong and weak typing, Structured programming, Syntax (programming languages), Task (computing), Temporary variable, Thread (computing), Threaded code, Transaction processing system, Transclusion, Undecidable problem, UNIVAC I, Variant type, Verb, Very long instruction word, Virtual memory, Visual Basic, Voluntary Voting System Guidelines. Expand index (86 more) »

Ada (programming language)

Ada is a structured, statically typed, imperative, and object-oriented high-level computer programming language, extended from Pascal and other languages.

New!!: Subroutine and Ada (programming language) · See more »


In linguistics, an adjective (abbreviated) is a describing word, the main syntactic role of which is to qualify a noun or noun phrase, giving more information about the object signified.

New!!: Subroutine and Adjective · See more »

AI Memo

The AI Memos are a series of influential memorandums and technical reports published by the MIT AI Lab, Massachusetts Institute of Technology, United States.

New!!: Subroutine and AI Memo · See more »


ALGOL (short for "Algorithmic Language") is a family of imperative computer programming languages, originally developed in the mid-1950s, which greatly influenced many other languages and was the standard method for algorithm description used by the ACM in textbooks and academic sources for more than thirty years.

New!!: Subroutine and ALGOL · See more »


ALGOL 60 (short for Algorithmic Language 1960) is a member of the ALGOL family of computer programming languages.

New!!: Subroutine and ALGOL 60 · See more »

Assembly language

An assembly (or assembler) language, often abbreviated asm, is a low-level programming language, in which there is a very strong (but often not one-to-one) correspondence between the assembly program statements and the architecture's machine code instructions.

New!!: Subroutine and Assembly language · See more »

Asynchronous procedure call

Asynchronous procedure call is a unit of work in a computer.

New!!: Subroutine and Asynchronous procedure call · See more »


BASIC (an acronym for Beginner's All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use.

New!!: Subroutine and BASIC · See more »

Boolean-valued function

A Boolean-valued function (sometimes called a predicate or a proposition) is a function of the type f: X → B, where X is an arbitrary set and where B is a Boolean domain, i.e. a generic two-element set, (for example B.

New!!: Subroutine and Boolean-valued function · See more »

Branch table

In computer programming, a branch table or jump table is a method of transferring program control (branching) to another part of a program (or a different program that may have been dynamically loaded) using a table of branch or jump instructions.

New!!: Subroutine and Branch table · See more »

C (programming language)

C (as in the letter ''c'') is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations.

New!!: Subroutine and C (programming language) · See more »

C Sharp (programming language)

C# (/si: ʃɑːrp/) is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines.

New!!: Subroutine and C Sharp (programming language) · See more »


C++ ("see plus plus") is a general-purpose programming language.

New!!: Subroutine and C++ · See more »

Call site

In programming, a call site of a function or subroutine is the location (line of code) where the function is called (or may be called, through dynamic dispatch).

New!!: Subroutine and Call site · See more »

Call stack

In computer science, a call stack is a stack data structure that stores information about the active subroutines of a computer program.

New!!: Subroutine and Call stack · See more »

Calling convention

In computer science, a calling convention is an implementation-level (low-level) scheme for how subroutines receive parameters from their caller and how they return a result.

New!!: Subroutine and Calling convention · See more »


Customer Information Control System (CICS) is a family of mixed language application servers that provide online transaction management and connectivity for applications on IBM Mainframe systems under z/OS and z/VSE.

New!!: Subroutine and CICS · See more »

Circular reference

A circular reference is a series of references where the last object references the first, resulting in a closed loop.

New!!: Subroutine and Circular reference · See more »

Class (computer programming)

In object-oriented programming, a class is an extensible program-code-template for creating objects, providing initial values for state (member variables) and implementations of behavior (member functions or methods).

New!!: Subroutine and Class (computer programming) · See more »

Closure (computer programming)

In programming languages, a closure (also lexical closure or function closure) is a technique for implementing lexically scoped name binding in a language with first-class functions.

New!!: Subroutine and Closure (computer programming) · See more »

Code refactoring

Code refactoring is the process of restructuring existing computer code—changing the factoring—without changing its external behavior.

New!!: Subroutine and Code refactoring · See more »

Code reuse

Code reuse, also called software reuse, is the use of existing software, or software knowledge, to build new software, following the reusability principles.

New!!: Subroutine and Code reuse · See more »

Command–query separation

Command–query separation (CQS) is a principle of imperative computer programming.

New!!: Subroutine and Command–query separation · See more »


A compiler is computer software that transforms computer code written in one programming language (the source language) into another programming language (the target language).

New!!: Subroutine and Compiler · See more »

Computer data storage

Computer data storage, often called storage or memory, is a technology consisting of computer components and recording media that are used to retain digital data.

New!!: Subroutine and Computer data storage · See more »

Computer file

A computer file is a computer resource for recording data discretely in a computer storage device.

New!!: Subroutine and Computer file · See more »

Computer programming

Computer programming is the process of building and designing an executable computer program for accomplishing a specific computing task.

New!!: Subroutine and Computer programming · See more »


Coroutines are computer-program components that generalize subroutines for non-preemptive multitasking, by allowing multiple entry points for suspending and resuming execution at certain locations.

New!!: Subroutine and Coroutine · See more »

Data descriptor

In computing, a data descriptor is a structure containing information that describes data.

New!!: Subroutine and Data descriptor · See more »

Data structure

In computer science, a data structure is a data organization and storage format that enables efficient access and modification.

New!!: Subroutine and Data structure · See more »

Data type

In computer science and computer programming, a data type or simply type is a classification of data which tells the compiler or interpreter how the programmer intends to use the data.

New!!: Subroutine and Data type · See more »

David Wheeler (computer scientist)

David John Wheeler FRS (9 February 1927 – 13 December 2004) was a computer scientist and professor of computer science at the University of Cambridge.

New!!: Subroutine and David Wheeler (computer scientist) · See more »

Decomposition (computer science)

Decomposition in computer science, also known as factoring, is breaking a complex problem or system into parts that are easier to conceive, understand, program, and maintain.

New!!: Subroutine and Decomposition (computer science) · See more »


In linear algebra, the determinant is a value that can be computed from the elements of a square matrix.

New!!: Subroutine and Determinant · See more »

Divide and conquer algorithm

In computer science, divide and conquer is an algorithm design paradigm based on multi-branched recursion.

New!!: Subroutine and Divide and conquer algorithm · See more »

Duplicate code

Duplicate code is a computer programming term for a sequence of source code that occurs more than once, either within a program or across different programs owned or maintained by the same entity.

New!!: Subroutine and Duplicate code · See more »

Dynamic dispatch

In computer science, dynamic dispatch is the process of selecting which implementation of a polymorphic operation (method or function) to call at run time.

New!!: Subroutine and Dynamic dispatch · See more »

Evaluation strategy

Evaluation strategies are used by programming languages to determine when to evaluate the argument(s) of a function call (for function, also read: operation, method, or relation) and what kind of value to pass to the function.

New!!: Subroutine and Evaluation strategy · See more »

Event (computing)

In computing, an event is an action or occurrence recognized by software, often originating asynchronously from the external environment, that may be handled by the software.

New!!: Subroutine and Event (computing) · See more »

Exception handling

Exception handling is the process of responding to the occurrence, during computation, of exceptions – anomalous or exceptional conditions requiring special processing – often changing the normal flow of program execution.

New!!: Subroutine and Exception handling · See more »

Expression (computer science)

An expression in a programming language is a combination of one or more constants, variables, operators, and functions that the programming language interprets (according to its particular rules of precedence and of association) and computes to produce ("to return", in a stateful environment) another value.

New!!: Subroutine and Expression (computer science) · See more »


Fibonacci (c. 1175 – c. 1250) was an Italian mathematician from the Republic of Pisa, considered to be "the most talented Western mathematician of the Middle Ages".

New!!: Subroutine and Fibonacci · See more »

Forth (programming language)

Forth is an imperative stack-based computer programming language and environment originally designed by Charles "Chuck" Moore.

New!!: Subroutine and Forth (programming language) · See more »


Fortran (formerly FORTRAN, derived from Formula Translation) is a general-purpose, compiled imperative programming language that is especially suited to numeric computation and scientific computing.

New!!: Subroutine and Fortran · See more »

Function (mathematics)

In mathematics, a function was originally the idealization of how a varying quantity depends on another quantity.

New!!: Subroutine and Function (mathematics) · See more »

Function overloading

In some programming languages, function overloading or method overloading is the ability to create multiple methods of the same name with different implementations.

New!!: Subroutine and Function overloading · See more »

Function prologue

In assembly language programming, the function prologue is a few lines of code at the beginning of a function, which prepare the stack and registers for use within the function.

New!!: Subroutine and Function prologue · See more »

Functional programming

In computer science, functional programming is a programming paradigm—a style of building the structure and elements of computer programs—that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data.

New!!: Subroutine and Functional programming · See more »

Garbage collection (computer science)

In computer science, garbage collection (GC) is a form of automatic memory management.

New!!: Subroutine and Garbage collection (computer science) · See more »

Global variable

In computer programming, a global variable is a variable with global scope, meaning that it is visible (hence accessible) throughout the program, unless shadowed.

New!!: Subroutine and Global variable · See more »

Guy L. Steele Jr.

Guy Lewis Steele Jr. (born October 2, 1954) is an American computer scientist who has played an important role in designing and documenting several computer programming languages.

New!!: Subroutine and Guy L. Steele Jr. · See more »

Haskell (programming language)

Haskell is a standardized, general-purpose compiled purely functional programming language, with non-strict semantics and strong static typing.

New!!: Subroutine and Haskell (programming language) · See more »

High-level programming language

In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer.

New!!: Subroutine and High-level programming language · See more »

Housekeeping (computing)

In computer programming, housekeeping can refer to either a standard entry or exit routine appended to a user-written block of code (such as a subroutine or function, sometimes known as a function prologue and epilogue) at its entry and exit or, alternatively, to any other automated or manual software process whereby a computer is cleaned up after usage (e.g. freeing resources such as virtual memory).

New!!: Subroutine and Housekeeping (computing) · See more »

HP 2100

The HP 2100 was a series of minicomputers produced by Hewlett-Packard (HP) from the mid-1960s to early 1990s.

New!!: Subroutine and HP 2100 · See more »


The International Business Machines Corporation (IBM) is an American multinational technology company headquartered in Armonk, New York, United States, with operations in over 170 countries.

New!!: Subroutine and IBM · See more »

IBM 1130

The IBM 1130 Computing System, introduced in 1965, was IBM's least expensive computer at that time.

New!!: Subroutine and IBM 1130 · See more »

IBM 1620

The IBM 1620 was announced by IBM on October 21, 1959, and marketed as an inexpensive "scientific computer".

New!!: Subroutine and IBM 1620 · See more »

IBM Personal Computer

The IBM Personal Computer, commonly known as the IBM PC, is the original version and progenitor of the IBM PC compatible hardware platform.

New!!: Subroutine and IBM Personal Computer · See more »

IBM System/360

The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978.

New!!: Subroutine and IBM System/360 · See more »


An identifier is a name that identifies (that is, labels the identity of) either a unique object or a unique class of objects, where the "object" or class may be an idea, physical object (or class thereof), or physical substance (or class thereof).

New!!: Subroutine and Identifier · See more »

Imperative programming

In computer science, imperative programming is a programming paradigm that uses statements that change a program's state.

New!!: Subroutine and Imperative programming · See more »

Indirect branch

An indirect branch (also known as a computed jump, indirect jump and register-indirect jump) is a type of program control instruction present in some machine language instruction sets.

New!!: Subroutine and Indirect branch · See more »

Information hiding

In computer science, information hiding is the principle of segregation of the design decisions in a computer program that are most likely to change, thus protecting other parts of the program from extensive modification if the design decision is changed.

New!!: Subroutine and Information hiding · See more »

Inline expansion

In computing, inline expansion, or inlining, is a manual or compiler optimization that replaces a function call site with the body of the called function.

New!!: Subroutine and Inline expansion · See more »

Intel 8008

The Intel 8008 ("eight-thousand-eight" or "eighty-oh-eight") is an early byte-oriented microprocessor designed and manufactured by Intel and introduced in April 1972.

New!!: Subroutine and Intel 8008 · See more »


In system programming, an interrupt is a signal to the processor emitted by hardware or software indicating an event that needs immediate attention.

New!!: Subroutine and Interrupt · See more »

John McCarthy (computer scientist)

John McCarthy (September 4, 1927 – October 24, 2011) was an American computer scientist and cognitive scientist.

New!!: Subroutine and John McCarthy (computer scientist) · See more »

Lazy evaluation

In programming language theory, lazy evaluation, or call-by-need is an evaluation strategy which delays the evaluation of an expression until its value is needed (non-strict evaluation) and which also avoids repeated evaluations (sharing).

New!!: Subroutine and Lazy evaluation · See more »

Library (computing)

In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development.

New!!: Subroutine and Library (computing) · See more »

Link register

A link register is a special-purpose register which holds the address to return to when a function call completes.

New!!: Subroutine and Link register · See more »

Lisp (programming language)

Lisp (historically, LISP) is a family of computer programming languages with a long history and a distinctive, fully parenthesized prefix notation.

New!!: Subroutine and Lisp (programming language) · See more »


In mathematics, the logarithm is the inverse function to exponentiation.

New!!: Subroutine and Logarithm · See more »

Logic programming

Logic programming is a type of programming paradigm which is largely based on formal logic.

New!!: Subroutine and Logic programming · See more »

Lotus 1-2-3

Lotus 1-2-3 is a discontinued spreadsheet program from Lotus Software (later part of IBM).

New!!: Subroutine and Lotus 1-2-3 · See more »

Macro (computer science)

A macro (short for "macroinstruction", from Greek μακρός 'long') in computer science is a rule or pattern that specifies how a certain input sequence (often a sequence of characters) should be mapped to a replacement output sequence (also often a sequence of characters) according to a defined procedure.

New!!: Subroutine and Macro (computer science) · See more »

Manchester Baby

The Manchester Baby, also known as the Small-Scale Experimental Machine (SSEM), was the world's first stored-program computer.

New!!: Subroutine and Manchester Baby · See more »

Mathematical induction

Mathematical induction is a mathematical proof technique.

New!!: Subroutine and Mathematical induction · See more »

Matrix (mathematics)

In mathematics, a matrix (plural: matrices) is a rectangular array of numbers, symbols, or expressions, arranged in rows and columns.

New!!: Subroutine and Matrix (mathematics) · See more »

Maurice Wilkes

Sir Maurice Vincent Wilkes (26 June 1913 – 29 November 2010) was a British computer scientist who designed and helped build the electronic delay storage automatic calculator (EDSAC), one of the earliest stored program computers and invented microprogramming, a method for using stored-program logic to operate the control unit of a central processing unit's circuits.

New!!: Subroutine and Maurice Wilkes · See more »

Method (computer programming)

A method in object-oriented programming (OOP) is a procedure associated with a message and an object.

New!!: Subroutine and Method (computer programming) · See more »

Modular programming

Modular programming is a software design technique that emphasizes separating the functionality of a programme into independent, interchangeable modules, such that each contains everything necessary to execute only one aspect of the desired functionality.

New!!: Subroutine and Modular programming · See more »

Nested function

In computer programming, a nested function (or nested procedure or subroutine) is a function which is defined within another function, the enclosing function.

New!!: Subroutine and Nested function · See more »


A noun (from Latin nōmen, literally meaning "name") is a word that functions as the name of some specific thing or set of things, such as living creatures, objects, places, actions, qualities, states of existence, or ideas.

New!!: Subroutine and Noun · See more »

Object (computer science)

In computer science, an object can be a variable, a data structure, a function, or a method, and as such, is a value in memory referenced by an identifier.

New!!: Subroutine and Object (computer science) · See more »

Object-oriented programming

Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which may contain data, in the form of fields, often known as attributes; and code, in the form of procedures, often known as methods. A feature of objects is that an object's procedures can access and often modify the data fields of the object with which they are associated (objects have a notion of "this" or "self").

New!!: Subroutine and Object-oriented programming · See more »

Operator overloading

In programming, operator overloading, sometimes termed operator ad hoc polymorphism, is a specific case of polymorphism, where different operators have different implementations depending on their arguments.

New!!: Subroutine and Operator overloading · See more »

Overhead (computing)

In computer science, overhead is any combination of excess or indirect computation time, memory, bandwidth, or other resources that are required to perform a specific task.

New!!: Subroutine and Overhead (computing) · See more »

Parameter (computer programming)

In computer programming, a parameter (often called formal parameter or formal argument) is a special kind of variable, used in a subroutine to refer to one of the pieces of data provided as input to the subroutine.

New!!: Subroutine and Parameter (computer programming) · See more »

Pascal (programming language)

Pascal is an imperative and procedural programming language, which Niklaus Wirth designed in 1968–69 and published in 1970, as a small, efficient language intended to encourage good programming practices using structured programming and data structuring. It is named in honor of the French mathematician, philosopher and physicist Blaise Pascal. Pascal was developed on the pattern of the ALGOL 60 language. Wirth had already developed several improvements to this language as part of the ALGOL X proposals, but these were not accepted and Pascal was developed separately and released in 1970. A derivative known as Object Pascal designed for object-oriented programming was developed in 1985; this was used by Apple Computer and Borland in the late 1980s and later developed into Delphi on the Microsoft Windows platform. Extensions to the Pascal concepts led to the Pascal-like languages Modula-2 and Oberon.

New!!: Subroutine and Pascal (programming language) · See more »


The PDP-1 (Programmed Data Processor-1) is the first computer in Digital Equipment Corporation's PDP series and was first produced in 1959.

New!!: Subroutine and PDP-1 · See more »


The PDP-11 is a series of 16-bit minicomputers sold by Digital Equipment Corporation (DEC) from 1970 into the 1990s, one of a succession of products in the PDP series.

New!!: Subroutine and PDP-11 · See more »


The PDP-8 was a 12-bit minicomputer produced by Digital Equipment Corporation (DEC).

New!!: Subroutine and PDP-8 · See more »


A peripheral device is "an ancillary device used to put information into and get information out of the computer." Three categories of peripheral devices exist based on their relationship with the computer.

New!!: Subroutine and Peripheral · See more »

PIC microcontroller

PIC (usually pronounced as "pick") is a family of microcontrollers made by Microchip Technology, derived from the PIC1650"PICmicro Family Tree", PIC16F Seminar Presentation originally developed by General Instrument's Microelectronics Division.

New!!: Subroutine and PIC microcontroller · See more »


PL/I (Programming Language One, pronounced) is a procedural, imperative computer programming language designed for scientific, engineering, business and system programming uses.

New!!: Subroutine and PL/I · See more »

Processor register

In computer architecture, a processor register is a quickly accessible location available to a computer's central processing unit (CPU).

New!!: Subroutine and Processor register · See more »

Program optimization

In computer science, program optimization or software optimization is the process of modifying a software system to make some aspect of it work more efficiently or use fewer resources.

New!!: Subroutine and Program optimization · See more »

Programming language

A programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output.

New!!: Subroutine and Programming language · See more »

Pseudorandom number generator

A pseudorandom number generator (PRNG), also known as a deterministic random bit generator (DRBG), is an algorithm for generating a sequence of numbers whose properties approximate the properties of sequences of random numbers.

New!!: Subroutine and Pseudorandom number generator · See more »

Punched card

A punched card or punch card is a piece of stiff paper that can be used to contain digital data represented by the presence or absence of holes in predefined positions.

New!!: Subroutine and Punched card · See more »

Punched tape

Punched tape or perforated paper tape is a form of data storage, consisting of a long strip of paper in which holes are punched to store data.

New!!: Subroutine and Punched tape · See more »

RCA 1802

The RCA CDP1802, a 40-pin LSI integrated circuit chip (IC), implemented using COSMAC (Complementary Symmetry Monolithic Array Computer) architecture, is an 8-bit CMOS microprocessor (µP) introduced by RCA in early 1976, the company's first single-chip microprocessor.

New!!: Subroutine and RCA 1802 · See more »


Recursion occurs when a thing is defined in terms of itself or of its type.

New!!: Subroutine and Recursion · See more »

Recursion (computer science)

Recursion in computer science is a method of solving a problem where the solution depends on solutions to smaller instances of the same problem (as opposed to iteration).

New!!: Subroutine and Recursion (computer science) · See more »

Reduced instruction set computer

A reduced instruction set computer, or RISC (pronounced 'risk'), is one whose instruction set architecture (ISA) allows it to have fewer cycles per instruction (CPI) than a complex instruction set computer (CISC).

New!!: Subroutine and Reduced instruction set computer · See more »

Reentrancy (computing)

In computing, a computer program or subroutine is called reentrant if it can be interrupted in the middle of its execution and then safely be called again ("re-entered") before its previous invocations complete execution.

New!!: Subroutine and Reentrancy (computing) · See more »

Return address

In postal mail, a return address is an explicit inclusion of the address of the person sending the message.

New!!: Subroutine and Return address · See more »

Return code

In computer programming, a return code or an error code is an enumerated message that corresponds to the status of a specific software application.

New!!: Subroutine and Return code · See more »

Return statement

In computer programming, a return statement causes execution to leave the current subroutine and resume at the point in the code immediately after where the subroutine was called, known as its return address.

New!!: Subroutine and Return statement · See more »

Scala (programming language)

Scala is a general-purpose programming language providing support for functional programming and a strong static type system.

New!!: Subroutine and Scala (programming language) · See more »

Scope (computer science)

In computer programming, the scope of a name binding – an association of a name to an entity, such as a variable – is the region of a computer program where the binding is valid: where the name can be used to refer to the entity.

New!!: Subroutine and Scope (computer science) · See more »

Self-modifying code

In computer science, self-modifying code is code that alters its own instructions while it is executing – usually to reduce the instruction path length and improve performance or simply to reduce otherwise repetitively similar code, thus simplifying maintenance.

New!!: Subroutine and Self-modifying code · See more »

Side effect (computer science)

In computer science, a function or expression is said to have a side effect if it modifies some state outside its scope or has an observable interaction with its calling functions or the outside world besides returning a value.

New!!: Subroutine and Side effect (computer science) · See more »

Software maintenance

Software maintenance in software engineering is the modification of a software product after delivery to correct faults, to improve performance or other attributes.

New!!: Subroutine and Software maintenance · See more »

Stack (abstract data type)

In computer science, a stack is an abstract data type that serves as a collection of elements, with two principal operations.

New!!: Subroutine and Stack (abstract data type) · See more »

Stack overflow

In software, a stack overflow occurs if the call stack pointer exceeds the stack bound.

New!!: Subroutine and Stack overflow · See more »

Stanley Gill

Professor Stanley Gill (26 March 1926 – 1975) was a British computer scientist credited, along with Maurice Wilkes and David Wheeler, with the invention of the first computer subroutine.

New!!: Subroutine and Stanley Gill · See more »

Statement (computer science)

In computer programming, a statement is a syntactic unit of an imperative programming language that expresses some action to be carried out.

New!!: Subroutine and Statement (computer science) · See more »

Strong and weak typing

In computer programming, programming languages are often colloquially classified as to whether the language's type system makes it strongly typed or weakly typed (loosely typed).

New!!: Subroutine and Strong and weak typing · See more »

Structured programming

Structured programming is a programming paradigm aimed at improving the clarity, quality, and development time of a computer program by making extensive use of the structured control flow constructs of selection (if/then/else) and repetition (while and for), block structures, and subroutines in contrast to using simple tests and jumps such as the go to statement, which can lead to "spaghetti code" that is potentially difficult to follow and maintain.

New!!: Subroutine and Structured programming · See more »

Syntax (programming languages)

In computer science, the syntax of a computer language is the set of rules that defines the combinations of symbols that are considered to be a correctly structured document or fragment in that language.

New!!: Subroutine and Syntax (programming languages) · See more »

Task (computing)

In computing, a task is a unit of execution or a unit of work.

New!!: Subroutine and Task (computing) · See more »

Temporary variable

In computer programming, a temporary variable is a variable with short lifetime, usually to hold data that will soon be discarded, or before it can be placed at a more permanent memory location.

New!!: Subroutine and Temporary variable · See more »

Thread (computing)

In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system.

New!!: Subroutine and Thread (computing) · See more »

Threaded code

In computer science, the term threaded code refers to a programming technique where the code has a form that essentially consists entirely of calls to subroutines.

New!!: Subroutine and Threaded code · See more »

Transaction processing system

Transaction processing is a way of computing that divides work into individual, indivisible operations, called transactions.

New!!: Subroutine and Transaction processing system · See more »


In computer science, transclusion is the inclusion of part or all of an electronic document into one or more other documents by hypertext reference.

New!!: Subroutine and Transclusion · See more »

Undecidable problem

In computability theory and computational complexity theory, an undecidable problem is a decision problem for which it is known to be impossible to construct a single algorithm that always leads to a correct yes-or-no answer.

New!!: Subroutine and Undecidable problem · See more »


The UNIVAC I (UNIVersal Automatic Computer I) was the first commercial computer produced in the United States.

New!!: Subroutine and UNIVAC I · See more »

Variant type

Variant is a data type in certain programming languages, particularly Visual Basic, OCaml, Delphi and C++ when using the Component Object Model.

New!!: Subroutine and Variant type · See more »


A verb, from the Latin verbum meaning word, is a word (part of speech) that in syntax conveys an action (bring, read, walk, run, learn), an occurrence (happen, become), or a state of being (be, exist, stand).

New!!: Subroutine and Verb · See more »

Very long instruction word

Very long instruction word (VLIW) refers to instruction set architectures designed to exploit instruction level parallelism (ILP).

New!!: Subroutine and Very long instruction word · See more »

Virtual memory

In computing, virtual memory (also virtual storage) is a memory management technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine" which "creates the illusion to users of a very large (main) memory." The computer's operating system, using a combination of hardware and software, maps memory addresses used by a program, called virtual addresses, into physical addresses in computer memory.

New!!: Subroutine and Virtual memory · See more »

Visual Basic

Visual Basic is a third-generation event-driven programming language and integrated development environment (IDE) from Microsoft for its Component Object Model (COM) programming model first released in 1991 and declared legacy during 2008.

New!!: Subroutine and Visual Basic · See more »

Voluntary Voting System Guidelines

The Voluntary Voting System Guidelines (VVSG) are guidelines adopted by the United States Election Assistance Commission (EAC) for the certification of voting systems.

New!!: Subroutine and Voluntary Voting System Guidelines · See more »

Redirects here:

Activation framework, Algorithm function, Callable unit, Called routine, Caller (programming), Function (Programming), Function (computer programming), Function (computer science), Function (computing), Function (programming), Function call, Function computer science, Handled, Jump to subroutine, Leaf function, Local variables, recursion and reentrancy, Method invocation, Optimization of subroutine calls, Procedure (computer science), Procedure (computing), Procedure (programming), Procedure call, Sub program, Sub routine, Subprogram, Subprogram (programming), Subprograms, Subroutine call, Subroutines, System routine.


[1] https://en.wikipedia.org/wiki/Subroutine

Hey! We are on Facebook now! »