en.unionpedia.org

Array programming, the Glossary

Index Array programming

In computer science, array programming refers to solutions that allow the application of operations to an entire set of values at once.[1]

Table of Contents

  1. 82 relations: A+ (programming language), Ada (programming language), Algorithmic efficiency, Analytica (software), APL (programming language), Armadillo (C++ library), Array (data structure), Array slicing, Associative property, Augmented assignment, Automatic vectorization, Automatically Tuned Linear Algebra Software, AVX-512, Blitz++, C (programming language), C++, Chapel (programming language), Cilk, Commutative property, Computational science, Computer science, Cross product, Dartmouth BASIC, Determinant, Euclidean vector, Fold (higher-order function), Fortran, FreeMat, Futhark (programming language), General-purpose computing on graphics processing units, GNU Compiler Collection, GNU Octave, Graphics processing unit, Hadamard product (matrices), High-level programming language, IDL (programming language), Implicit parallelism, Intel, Invertible matrix, J (programming language), K (programming language), Kenneth E. Iverson, LAPACK, Linear algebra, MATLAB, Matrix (mathematics), Matrix multiplication, MMX (instruction set), Moore–Penrose inverse, Multi-core processor, ... Expand index (32 more) »

A+ (programming language)

A+ is a high-level, interactive, interpreted array programming language designed for numerically intensive applications, especially those found in financial applications. Array programming and a+ (programming language) are array programming languages.

See Array programming and A+ (programming language)

Ada (programming language)

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

See Array programming and Ada (programming language)

Algorithmic efficiency

In computer science, algorithmic efficiency is a property of an algorithm which relates to the amount of computational resources used by the algorithm.

See Array programming and Algorithmic efficiency

Analytica (software)

Analytica is a visual software developed by Lumina Decision Systems for creating, analyzing and communicating quantitative decision models. Array programming and Analytica (software) are array programming languages.

See Array programming and Analytica (software)

APL (programming language)

APL (named after the book A Programming Language) is a programming language developed in the 1960s by Kenneth E. Iverson. Array programming and APL (programming language) are array programming languages.

See Array programming and APL (programming language)

Armadillo (C++ library)

Armadillo is a linear algebra software library for the C++ programming language.

See Array programming and Armadillo (C++ library)

Array (data structure)

In computer science, an array is a data structure consisting of a collection of elements (values or variables), of same memory size, each identified by at least one array index or key.

See Array programming and Array (data structure)

Array slicing

In computer programming, array slicing is an operation that extracts a subset of elements from an array and packages them as another array, possibly in a different dimension from the original.

See Array programming and Array slicing

Associative property

In mathematics, the associative property is a property of some binary operations that means that rearranging the parentheses in an expression will not change the result.

See Array programming and Associative property

Augmented assignment

Augmented assignment (or compound assignment) is the name given to certain assignment operators in certain programming languages (especially those derived from C).

See Array programming and Augmented assignment

Automatic vectorization

Automatic vectorization, in parallel computing, is a special case of automatic parallelization, where a computer program is converted from a scalar implementation, which processes a single pair of operands at a time, to a vector implementation, which processes one operation on multiple pairs of operands at once.

See Array programming and Automatic vectorization

Automatically Tuned Linear Algebra Software

Automatically Tuned Linear Algebra Software (ATLAS) is a software library for linear algebra.

See Array programming and Automatically Tuned Linear Algebra Software

AVX-512

AVX-512 are 512-bit extensions to the 256-bit Advanced Vector Extensions SIMD instructions for x86 instruction set architecture (ISA) proposed by Intel in July 2013, and first implemented in the 2016 Intel Xeon Phi x200 (Knights Landing), and then later in a number of AMD and other Intel CPUs (see list below).

See Array programming and AVX-512

Blitz++

Blitz++ is a high-performance vector mathematics library written in C++.

See Array programming and Blitz++

C (programming language)

C (pronounced – like the letter c) is a general-purpose programming language.

See Array programming and C (programming language)

C++

C++ (pronounced "C plus plus" and sometimes abbreviated as CPP) is a high-level, general-purpose programming language created by Danish computer scientist Bjarne Stroustrup.

See Array programming and C++

Chapel (programming language)

Chapel, the Cascade High Productivity Language, is a parallel programming language that was developed by Cray, and later by Hewlett Packard Enterprise which acquired Cray. Array programming and Chapel (programming language) are array programming languages.

See Array programming and Chapel (programming language)

Cilk

Cilk, Cilk++, Cilk Plus and OpenCilk are general-purpose programming languages designed for multithreaded parallel computing.

See Array programming and Cilk

Commutative property

In mathematics, a binary operation is commutative if changing the order of the operands does not change the result.

See Array programming and Commutative property

Computational science

Computational science, also known as scientific computing, technical computing or scientific computation (SC), is a division of science that uses advanced computing capabilities to understand and solve complex physical problems.

See Array programming and Computational science

Computer science

Computer science is the study of computation, information, and automation.

See Array programming and Computer science

Cross product

In mathematics, the cross product or vector product (occasionally directed area product, to emphasize its geometric significance) is a binary operation on two vectors in a three-dimensional oriented Euclidean vector space (named here E), and is denoted by the symbol \times.

See Array programming and Cross product

Dartmouth BASIC

Dartmouth BASIC is the original version of the BASIC programming language.

See Array programming and Dartmouth BASIC

Determinant

In mathematics, the determinant is a scalar-valued function of the entries of a square matrix.

See Array programming and Determinant

Euclidean vector

In mathematics, physics, and engineering, a Euclidean vector or simply a vector (sometimes called a geometric vector or spatial vector) is a geometric object that has magnitude (or length) and direction.

See Array programming and Euclidean vector

Fold (higher-order function)

In functional programming, fold (also termed reduce, accumulate, aggregate, compress, or inject) refers to a family of higher-order functions that analyze a recursive data structure and through use of a given combining operation, recombine the results of recursively processing its constituent parts, building up a return value.

See Array programming and Fold (higher-order function)

Fortran

Fortran (formerly FORTRAN) is a third generation, compiled, imperative programming language that is especially suited to numeric computation and scientific computing. Array programming and Fortran are array programming languages.

See Array programming and Fortran

FreeMat

FreeMat is a free open-source numerical computing environment and programming language, similar to MATLAB and GNU Octave. Array programming and FreeMat are array programming languages.

See Array programming and FreeMat

Futhark (programming language)

Futhark is a multi-paradigm, high-level, functional, data parallel, array programming language. Array programming and Futhark (programming language) are array programming languages.

See Array programming and Futhark (programming language)

General-purpose computing on graphics processing units

General-purpose computing on graphics processing units (GPGPU, or less often GPGP) is the use of a graphics processing unit (GPU), which typically handles computation only for computer graphics, to perform computation in applications traditionally handled by the central processing unit (CPU).

See Array programming and General-purpose computing on graphics processing units

GNU Compiler Collection

The GNU Compiler Collection (GCC) is a collection of compilers from the GNU Project that support various programming languages, hardware architectures and operating systems.

See Array programming and GNU Compiler Collection

GNU Octave

GNU Octave is a scientific programming language for scientific computing and numerical computation. Array programming and GNU Octave are array programming languages.

See Array programming and GNU Octave

Graphics processing unit

A graphics processing unit (GPU) is a specialized electronic circuit initially designed for digital image processing and to accelerate computer graphics, being present either as a discrete video card or embedded on motherboards, mobile phones, personal computers, workstations, and game consoles.

See Array programming and Graphics processing unit

Hadamard product (matrices)

In mathematics, the Hadamard product (also known as the element-wise product, entrywise product or Schur product) is a binary operation that takes in two matrices of the same dimensions and returns a matrix of the multiplied corresponding elements.

See Array programming and Hadamard product (matrices)

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.

See Array programming and High-level programming language

IDL (programming language)

IDL, short for Interactive Data Language, is a programming language used for data analysis. Array programming and IDL (programming language) are array programming languages.

See Array programming and IDL (programming language)

Implicit parallelism

In computer science, implicit parallelism is a characteristic of a programming language that allows a compiler or interpreter to automatically exploit the parallelism inherent to the computations expressed by some of the language's constructs.

See Array programming and Implicit parallelism

Intel

Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, and incorporated in Delaware.

See Array programming and Intel

Invertible matrix

In linear algebra, an -by- square matrix is called invertible (also nonsingular, nondegenerate or rarely regular) if there exists an -by- square matrix such that\mathbf.

See Array programming and Invertible matrix

J (programming language)

The J programming language, developed in the early 1990s by Kenneth E. Iverson and Roger Hui, is an array programming language based primarily on APL (also by Iverson). Array programming and j (programming language) are array programming languages.

See Array programming and J (programming language)

K (programming language)

K is a proprietary array processing programming language developed by Arthur Whitney and commercialized by Kx Systems. Array programming and k (programming language) are array programming languages.

See Array programming and K (programming language)

Kenneth E. Iverson

Kenneth Eugene Iverson (17 December 1920 – 19 October 2004) was a Canadian computer scientist noted for the development of the programming language APL.

See Array programming and Kenneth E. Iverson

LAPACK

LAPACK ("Linear Algebra Package") is a standard software library for numerical linear algebra.

See Array programming and LAPACK

Linear algebra

Linear algebra is the branch of mathematics concerning linear equations such as: linear maps such as: and their representations in vector spaces and through matrices.

See Array programming and Linear algebra

MATLAB

MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. Array programming and MATLAB are array programming languages.

See Array programming and MATLAB

Matrix (mathematics)

In mathematics, a matrix (matrices) is a rectangular array or table of numbers, symbols, or expressions, with elements or entries arranged in rows and columns, which is used to represent a mathematical object or property of such an object.

See Array programming and Matrix (mathematics)

Matrix multiplication

In mathematics, particularly in linear algebra, matrix multiplication is a binary operation that produces a matrix from two matrices.

See Array programming and Matrix multiplication

MMX (instruction set)

MMX is a single instruction, multiple data (SIMD) instruction set architecture designed by Intel, introduced on January 8, 1997 with its Pentium P5 (microarchitecture) based line of microprocessors, named "Pentium with MMX Technology".

See Array programming and MMX (instruction set)

Moore–Penrose inverse

In mathematics, and in particular linear algebra, the Moore–Penrose inverse of a matrix, often called the pseudoinverse, is the most widely known generalization of the inverse matrix.

See Array programming and Moore–Penrose inverse

Multi-core processor

A multi-core processor is a microprocessor on a single integrated circuit with two or more separate processing units, called cores (for example, dual-core or quad-core), each of which reads and executes program instructions.

See Array programming and Multi-core processor

Multidimensional analysis

In statistics, econometrics and related fields, multidimensional analysis (MDA) is a data analysis process that groups data into two categories: data dimensions and measurements.

See Array programming and Multidimensional analysis

Multiple instruction, multiple data

In computing, multiple instruction, multiple data (MIMD) is a technique employed to achieve parallelism.

See Array programming and Multiple instruction, multiple data

Nial

Nial (from "Nested Interactive Array Language") is a high-level array programming language developed from about 1981 by Mike Jenkins of Queen's University, Kingston, Ontario, Canada. Array programming and Nial are array programming languages.

See Array programming and Nial

NumPy

NumPy (pronounced) is a library for the Python programming language, adding support for large, multi-dimensional arrays and matrices, along with a large collection of high-level mathematical functions to operate on these arrays. Array programming and NumPy are array programming languages.

See Array programming and NumPy

One-liner program

In computer programming, a one-liner program originally was textual input to the command line of an operating system shell that performed some function in just one line of input.

See Array programming and One-liner program

OpenMP

OpenMP (Open Multi-Processing) is an application programming interface (API) that supports multi-platform shared-memory multiprocessing programming in C, C++, and Fortran, on many platforms, instruction-set architectures and operating systems, including Solaris, AIX, FreeBSD, HP-UX, Linux, macOS, and Windows.

See Array programming and OpenMP

Operator overloading

In computer 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.

See Array programming and Operator overloading

Optimizing compiler

An optimizing compiler is a compiler designed to generate code that is optimized in aspects such as minimizing program execution time, memory use, storage size, and power consumption.

See Array programming and Optimizing compiler

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.

See Array programming and Overhead (computing)

Parallel computing

Parallel computing is a type of computation in which many calculations or processes are carried out simultaneously.

See Array programming and Parallel computing

Pascal (programming language)

Pascal is an imperative and procedural programming language, designed by Niklaus Wirth as a small, efficient language intended to encourage good programming practices using structured programming and data structuring.

See Array programming and Pascal (programming language)

Perl Data Language

Perl Data Language (abbreviated PDL) is a set of free software array programming extensions to the Perl programming language. Array programming and Perl Data Language are array programming languages.

See Array programming and Perl Data Language

Python (programming language)

Python is a high-level, general-purpose programming language.

See Array programming and Python (programming language)

Q (programming language from Kx Systems)

Q is a programming language for array processing, developed by Arthur Whitney. Array programming and q (programming language from Kx Systems) are array programming languages.

See Array programming and Q (programming language from Kx Systems)

R (programming language)

R is a programming language for statistical computing and data visualization. Array programming and r (programming language) are array programming languages.

See Array programming and R (programming language)

Raku (programming language)

Raku is a member of the Perl family of programming languages.

See Array programming and Raku (programming language)

Relational operator

In computer science, a relational operator is a programming language construct or operator that tests or defines some kind of relation between two entities.

See Array programming and Relational operator

S-Lang

The S-Lang programming library is a software library for Unix, Windows, VMS, OS/2, and Mac OS X. It provides routines for embedding an interpreter for the S-Lang scripting language, and components to facilitate the creation of text-based applications.

See Array programming and S-Lang

SAC programming language

SAC (Single Assignment C) is a strict purely functional programming language whose design is focused on the needs of numerical applications. Array programming and SAC programming language are array programming languages.

See Array programming and SAC programming language

Scalar processor

Scalar processors are a class of computer processors that process only one data item at a time.

See Array programming and Scalar processor

Scilab

Scilab is a free and open-source, cross-platform numerical computational package and a high-level, numerically oriented programming language. Array programming and Scilab are array programming languages.

See Array programming and Scilab

Single instruction, multiple data

Single instruction, multiple data (SIMD) is a type of parallel processing in Flynn's taxonomy.

See Array programming and Single instruction, multiple data

Square matrix

In mathematics, a square matrix is a matrix with the same number of rows and columns.

See Array programming and Square matrix

SSSE3

Supplemental Streaming SIMD Extensions 3 (SSSE3 or SSE3S) is a SIMD instruction set created by Intel and is the fourth iteration of the SSE technology.

See Array programming and SSSE3

Stata

Stata (alternatively, occasionally stylized as STATA) is a general-purpose statistical software package developed by StataCorp for data manipulation, visualization, statistics, and automated reporting.

See Array programming and Stata

System of linear equations

In mathematics, a system of linear equations (or linear system) is a collection of two or more linear equations involving the same variables.

See Array programming and System of linear equations

Tensor

In mathematics, a tensor is an algebraic object that describes a multilinear relationship between sets of algebraic objects related to a vector space.

See Array programming and Tensor

TI-BASIC

TI-BASIC is the official name of a BASIC-like language built into Texas Instruments' graphing calculators.

See Array programming and TI-BASIC

Transpose

In linear algebra, the transpose of a matrix is an operator which flips a matrix over its diagonal; that is, it switches the row and column indices of the matrix by producing another matrix, often denoted by (among other notations).

See Array programming and Transpose

Vector processor

In computing, a vector processor or array processor is a central processing unit (CPU) that implements an instruction set where its instructions are designed to operate efficiently and effectively on large one-dimensional arrays of data called vectors.

See Array programming and Vector processor

Z-level programming language

Z-level Programming Language is an array programming language designed to replace C and C++ programming languages in engineering and scientific applications. Array programming and z-level programming language are array programming languages.

See Array programming and Z-level programming language

3DNow!

3DNow! is a deprecated extension to the x86 instruction set developed by Advanced Micro Devices (AMD).

See Array programming and 3DNow!

References

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

Also known as Array (programming), Array programming language, Array programming languages, Array-based programming, Array-oriented programming, Mata (programming language), Scalar programming.

, Multidimensional analysis, Multiple instruction, multiple data, Nial, NumPy, One-liner program, OpenMP, Operator overloading, Optimizing compiler, Overhead (computing), Parallel computing, Pascal (programming language), Perl Data Language, Python (programming language), Q (programming language from Kx Systems), R (programming language), Raku (programming language), Relational operator, S-Lang, SAC programming language, Scalar processor, Scilab, Single instruction, multiple data, Square matrix, SSSE3, Stata, System of linear equations, Tensor, TI-BASIC, Transpose, Vector processor, Z-level programming language, 3DNow!.