|
Encyclopedia
-
Lazy Evaluation: Encyclopedia Ii - Lazy Evaluation - Delayed Evaluation
Delayed evaluation is used particularly in functional languages. When using delayed evaluation, an expression is not evaluated as soon as...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Introduction
Mathematical functions have great strengths in terms of flexibility and analysis. For example, if a function is known to be idempotent, t...
» Read the article
|
|
Encyclopedia
-
Coroutine: Encyclopedia Ii - Coroutine - Coroutine Alternatives And Implementations
As of 2003, many of the most popular programming languages, including C and its derivatives, do not have direct support for coroutines wi...
» Read the article
|
|
Encyclopedia
-
Currying: Encyclopedia Ii - Currying - Examples
Suppose that plus is a function taking two arguments x and y and returning x + y. In the ML programming language we would define it as fo...
» Read the article
|
|
Encyclopedia
-
Optimization Computer Science: Encyclopedia Ii - Optimization Computer Science - Automated And Manual Optimization
Optimization can be automated by compilers or performed by programmers. Gains are usually limited for local optimization, and larger for ...
» Read the article
|
|
Encyclopedia
-
Dataflow: Encyclopedia Ii - Dataflow - Hardware Architecture
A compiler analyzes a computer program for the data dependencies between operations. It does this in order to better optimize the instruc...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Pure Functions
Purely functional programs have no side-effects. Since functions do not modify state, no data may be changed by parallel function calls. ...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Speed And Space Considerations
Functional languages have long been criticised as resource-hungry, both in terms of CPU resources and memory. This was mainly due to two ...
» Read the article
|
|
Encyclopedia
-
Optimization Computer Science: Encyclopedia Ii - Optimization Computer Science - Different Fields
In operations research, optimization is the problem of determining the inputs of a function that minimize or maximize its value. Sometime...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Functional Languages
The first computer-based functional programming language was Information Processing Language (IPL) from the RAND corporation. Another ver...
» Read the article
|
|
Encyclopedia
-
Optimization Computer Science: Encyclopedia Ii - Optimization Computer Science - Bottlenecks
Optimization requires finding a bottleneck: the critical part of the code that is the primary consumer of the needed resource. Improving ...
» Read the article
|
|
Encyclopedia
-
Lazy: Encyclopedia - Lazy
Lazy can refer to:
Laziness (sloth). See also Seven deadly sins
Lazy evaluation
A song by Deep Purple
Other related archivesDeep...
» Read the article
|
|
Encyclopedia
-
Optimization Computer Science: Encyclopedia Ii - Optimization Computer Science - Techniques
Load balancing spreads the load over a large number of servers. Often load balancing is done transparently (i.e., without users noticing ...
» Read the article
|
|
Encyclopedia
-
Optimization Computer Science: Encyclopedia Ii - Optimization Computer Science - Time Taken For Optimization
On some occasions, the time taken for optimization in itself may be an issue.
In a software project, optimizing code usually does not add...
» Read the article
|
|
Encyclopedia
-
Optimization Computer Science: Encyclopedia Ii - Optimization Computer Science - When To Optimize
Optimization can reduce readability and add code that is used only to improve the performance. This may complicate programs or systems, m...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Comparison With Imperative Programming
Functional programming can be contrasted with imperative programming. Functional programming appears to be missing several constructs oft...
» Read the article
|
|
Encyclopedia
-
Optimization Computer Science: Encyclopedia Ii - Optimization Computer Science - Basis
Tasks can often be performed more efficiently. For example, consider the following C code snippet to sum all integers from 1 to N:
int i...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Higher-order Functions
A powerful mechanism sometimes used in functional programming is the notion of higher-order functions. Functions are higher-order when th...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Speed And Space Considerations
Functional languages have long been criticised as resource-hungry, both in terms of CPU resources and memory. This was mainly due to two ...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Functional Programming Languages
Pure functional programs require no variables and have no side-effects, and are therefore automatically thread-safe. They are also automa...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Higher-order Functions
A powerful mechanism used in functional programming is the notion of higher-order functions. Functions are higher-order when they can tak...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Comparison With Imperative Programming
Functional programming can be contrasted with imperative programming. Functional programming appears to be missing several constructs oft...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - Functional Languages
The oldest example of a functional language is Lisp, though neither the original LISP nor modern Lisps such as Common Lisp are pure-funct...
» Read the article
|
|
Encyclopedia
-
Coroutine: Encyclopedia Ii - Coroutine - Brief Comparison And Example
Coroutines are more generic than subroutines. The start of a subroutine is the only point of entry; the start of a coroutine is the first...
» Read the article
|
|
Encyclopedia
-
Dataflow: Encyclopedia Ii - Dataflow - Concurrency
A dataflow network is a network of concurrently executing processes or automata that can communicate by sending data over channels (see m...
» Read the article
|
|
Encyclopedia
-
Functional Programming: Encyclopedia Ii - Functional Programming - History
Lambda calculus, invented by Alonzo Church in the 1930s, provides a theoretical framework for describing functions and their evaluation. ...
» Read the article
|
|
Encyclopedia
-
Dataflow: Encyclopedia Ii - Dataflow - Software Architecture
Dataflow is a software architecture based on the idea that changing the value of a variable should automatically force recalculation of t...
» Read the article
|
|
Encyclopedia
-
Currying: Encyclopedia Ii - Currying - Mathematical View
When viewed in a set-theoretic light, currying becomes the theorem that the set of functions from to A, and the set (AB)C of functions ...
» Read the article
|
|
Encyclopedia
-
Coroutine: Encyclopedia Ii - Coroutine - Detailed Comparison
Since coroutines can have more points of entry and exit than subroutines, it is possible to implement any subroutine as a coroutine. Inde...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Parallel Computing Systems
The term parallel processor is sometimes used for a computer with more than one processor, available for parallel processing. Systems wit...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Parallel Computing Systems
The term parallel processor is sometimes used for a computer with more than one processor, available for parallel processing. Systems wit...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Parallel Programming
A huge number of software systems have been designed for programming parallel computers, both at the operating system and programming lan...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Parallel Programming Models
Main article: Parallel programming model
A parallel programming model is a set of software technologies to express parallel algorithms an...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Topics In Parallel Computing
Generic:
Automatic parallelization
Parallel algorithm
Finding parallelism in problems and algorithms
Cellular automaton
Computer scienc...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Algorithms
It should not be imagined that successful parallel computing is a matter of obtaining the required hardware and connecting it suitably. T...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Inter-thread Communication
Parallel computers are theoretically modeled as Parallel Random Access Machines (PRAMs). The PRAM model ignores the cost of interconnecti...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Algorithms
It should not be imagined that successful parallel computing is a matter of obtaining the required hardware and connecting it suitably. T...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Parallel Programming Models
Main article: Parallel programming model
A parallel programming model is a set of software technologies to express parallel algorithms an...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Topics In Parallel Computing
Generic:
Automatic parallelization
Parallel programming
Parallel algorithm
Finding parallelism in problems and algorithms
Cellular autom...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Inter-thread Communication
Parallel computers are theoretically modeled as Parallel Random Access Machines (PRAMs). The PRAM model ignores the cost of interconnecti...
» Read the article
|
|
Encyclopedia
-
Parallel Computing: Encyclopedia Ii - Parallel Computing - Parallel Software
A huge number of software systems have been designed for programming parallel computers, both at the operating system and programming lan...
» Read the article
|