# Aldor

> programming language

**Wikidata**: [Q1549370](https://www.wikidata.org/wiki/Q1549370)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Aldor)  
**Source**: https://4ort.xyz/entity/aldor

## Summary
Aldor is a programming language and object-based language originally developed by the IBM Thomas J. Watson Research Center. Inception occurred in 1990, resulting in a system that supports multiple paradigms including object-oriented, functional, imperative, and logic programming. It is distinguished by its static and dependent type disciplines.

## Key Facts
- **Inception:** 1990
- **Developer:** IBM Thomas J. Watson Research Center
- **Instance of:** Programming language, Object-based language, Computer algebra system
- **Typing Discipline:** Static typing, Dependent type
- **Operating System:** Linux
- **Website:** http://www.aldor.org
- **Programming Paradigms:** Object-oriented programming, Functional programming, Imperative programming, Logic programming
- **Influenced By:** Q34010, Q81571

## FAQs
### Q: What type of programming language is Aldor?
A: Aldor is a multi-paradigm language that supports object-oriented, functional, imperative, and logic programming. It is classified as both a programming language and an object-based language.

### Q: Who developed Aldor and when was it created?
A: Aldor was developed by the IBM Thomas J. Watson Research Center. The project's inception dates to 1990.

### Q: What are the typing characteristics of Aldor?
A: The language utilizes a typing discipline that features both static typing and dependent types.

## Why It Matters
Aldor holds significance in the landscape of programming languages due to its sophisticated type system and multi-paradigm flexibility. Developed by a major research institution (IBM), it addresses the complex requirements of software construction by allowing developers to utilize different programming styles—object-oriented, functional, imperative, and logic—within a single framework.

The inclusion of dependent types is particularly notable; this feature allows types to depend on values, enabling the expression of precise program specifications and offering strong guarantees for program correctness. This makes Aldor relevant to high-assurance computing and mathematical software development. Furthermore, its classification as an instance of a "computer algebra system" suggests it plays a role in scientific and mathematical computation, bridging the gap between general-purpose programming and specialized algorithmic solving. Its design reflects an ambition to unify efficient execution with high-level abstraction.

## Notable For
- **Multi-Paradigm Support:** Uniquely combines object-oriented, functional, imperative, and logic programming in one system.
- **Advanced Type System:** Features dependent types and static typing, which are advanced features for ensuring code correctness.
- **Research Pedigree:** Developed by IBM Thomas J. Watson Research Center, indicating a foundation in rigorous computer science research.
- **Dual Classification:** Functions as both a general programming language and a computer algebra system.

## Body
### Origins and Development
The programming language Aldor was established in 1990. Its development is credited to the IBM Thomas J. Watson Research Center. The language is designed to operate on the Linux operating system and maintains a web presence at aldor.org.

### Technical Specifications
Aldor is defined by a robust set of technical properties that categorize it within the software ecosystem:
*   **Classification:** It is identified as an instance of a programming language, an object-based language, and a computer algebra system.
*   **Typing:** The language enforces static typing and supports dependent types.
*   **Paradigms:** It accommodates a wide array of programming methodologies, specifically object-oriented programming, functional programming, imperative programming, and logic programming.

### Relationships and Influences
The design and evolution of Aldor show connections to other entities within the computing world. According to structured data, the language was influenced by entities identified as Q34010 and Q81571. It is distinct from other entities but shares the fundamental purpose of instructing machines common to all programming languages.