Aldor
   HOME
*





Aldor
Aldor is a programming language. It is the successor of A# as the extension language of the Axiom computer algebra system. Aldor combines imperative, functional, and object-oriented features. It has an elaborate type system, allowing types to be used as first-class values. Aldor's syntax is heavily influenced by Pascal, but it is optionally indentation-sensitive, using whitespace characters and the off-side rule, like Python. In its current implementation, it is compiled, but an interactive listener is provided. Aldor is distributed as free and open-source software, under the Apache License 2.0. Examples The Hello world program looks like this: #include "aldor" #include "aldorio" stdout << "Hello, world!" << newline; Example of dependent types (from the User Guide): #include "aldor" #include "aldorio" #pile sumlist(R: ArithmeticType, l: List R): R

s: R := 0; for x in l repeat s := s + x s impor ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


A♯ (Axiom)
A♯ (pronounced: A sharp) is an object-oriented functional programming language distributed as a separable component of Version 2 of the Axiom computer algebra system. A# types and functions are first-class values and can be used freely together with an extensive library of data structures and other mathematical abstractions. A key design guideline for A# was suitability of compiling to portable and efficient machine code. It is distributed as free and open-source software under a BSD-like license. Development of A# has now changed to the programming language Aldor. A# has both an optimising compiler, and an intermediate code interpreter. The compiler can emit any of: * Executable stand-alone programs * Libraries, of native operating system format objects, or of portable bytecode * Source code, for languages C, or Lisp The following C compilers are supported: GNU Compiler Collection (GCC), Xlc, Oracle Developer Studio Oracle Developer Studio, formerly named Oracle Sola ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Axiom (computer Algebra System)
Axiom is a free, general-purpose computer algebra system. It consists of an interpreter environment, a compiler and a library, which defines a strongly typed hierarchy. History Two computer algebra systems named Scratchpad were developed by IBM. The first one was started in 1965 by James Griesmer at the request of Ralph Gomory, and written in Fortran. The development of this software was stopped before any public release. The second Scratchpad, originally named Scratchpad II, was developed from 1977 on, at Thomas J. Watson Research Center, under the direction of Richard Dimick Jenks. The design is principally due to Richard D. Jenks (IBM Research), James H. Davenport (University of Bath), Barry M. Trager (IBM Research), David Y.Y. Yun (Southern Methodist University) and Victor S. Miller (IBM Research). Early consultants on the project were David Barton (University of California, Berkeley) and James W. Thatcher (IBM Research). Implementation included Robert Sutor (IBM Resear ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Programming Paradigm
Programming paradigms are a way to classify programming languages based on their features. Languages can be classified into multiple paradigms. Some paradigms are concerned mainly with implications for the execution model of the language, such as allowing side effects, or whether the sequence of operations is defined by the execution model. Other paradigms are concerned mainly with the way that code is organized, such as grouping a code into units along with the state that is modified by the code. Yet others are concerned mainly with the style of syntax and grammar. Common programming paradigms include: * imperative in which the programmer instructs the machine how to change its state, ** procedural which groups instructions into procedures, ** object-oriented which groups instructions with the part of the state they operate on, * declarative in which the programmer merely declares properties of the desired result, but not how to compute it ** functional in which the de ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  



MORE