# Nyquist

> programming language for sound synthesis and analysis based on the Lisp programming language

**Wikidata**: [Q1788197](https://www.wikidata.org/wiki/Q1788197)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Nyquist_(programming_language))  
**Source**: https://4ort.xyz/entity/nyquist

## Summary
Nyquist is a programming language designed specifically for sound synthesis and analysis. Based on the functional Lisp programming language, it serves as an audio programming language for sound production and algorithmic composition. It was developed by the American computer scientist and academic Roger B. Dannenberg.

## Key Facts
*   **Classification:** Nyquist is an instance of an audio programming language.
*   **Developer:** Created by Roger B. Dannenberg, an American academic and computer scientist.
*   **Language Basis:** It is based on and influenced by Lisp, a functional programming language rooted in lambda calculus.
*   **Naming:** The language is named after Harry Nyquist.
*   **Current Version:** Version 3.15 (as documented in provided sources).
*   **File Extensions:** Nyquist code utilizes the file extensions `.lsp` and `.sal`.
*   **Inception Date:** The recorded inception date for the entity is March 4, 2009.
*   **Official Website:** https://www.cs.cmu.edu/~music/cmp/nyquist/index.html
*   **Alternate Names:** It is also known as "Nyquist语言" (Nyquist Language).

## FAQs
### Q: What is Nyquist used for?
A: Nyquist is used for sound synthesis and analysis. As an audio programming language, it facilitates sound production and algorithmic composition.

### Q: What programming paradigm does Nyquist use?
A: Nyquist is based on Lisp, which is a functional programming language based on the lambda calculus.

### Q: Who created Nyquist?
A: Nyquist was developed by Roger B. Dannenberg, an American academic, university teacher, and computer scientist born in 1955.

## Why It Matters
Nyquist occupies a specific niche in computer science and music technology by providing a high-level, functional approach to audio manipulation. While many audio tools rely on graphical interfaces or low-level signal processing code (like C++), Nyquist leverages the Lisp programming language to offer a powerful abstraction for sound synthesis and analysis. This allows composers and programmers to write algorithms to generate sound, bridging the gap between rigorous computer science logic and creative audio production.

Its significance is underscored by its academic origin—developed by Roger B. Dannenberg at Carnegie Mellon University (indicated by the website domain). By being named after Harry Nyquist, a pioneer in signal processing theory, the language signals its fundamental connection to the mathematics of digital audio. Its continued development, evidenced by modern versions like 3.15, ensures it remains a relevant tool for those seeking to combine functional programming techniques with rigorous audio engineering.

## Notable For
*   **Functional Audio Synthesis:** Distinguishes itself from other audio languages by utilizing a Lisp-based functional programming paradigm.
*   **Academic Heritage:** Developed by Roger B. Dannenberg, a notable figure in computer science and academia.
*   **Dual Syntax Support:** Supports file extensions for both standard Lisp (`.lsp`) and SAL (`.sal`), a higher-level syntax often associated with Nyquist.
*   **Algorithmic Composition:** Specifically designed to support algorithmic composition, distinct from standard Digital Audio Workstation (DAW) scripting.

## Body
### Development and Origins
Nyquist is an audio programming language developed by Roger B. Dannenberg, an American computer scientist and university teacher. The language is rooted in the Lisp programming language, which originated in 1958. Nyquist is classified as a tool for sound production, algorithmic composition, and sound synthesis. According to structured data records, the language carries an inception date of March 4, 2009, and is named in honor of Harry Nyquist.

### Technical Specifications
The language operates as a functional environment based on the lambda calculus, inheriting characteristics from Lisp. Users interact with the language through files utilizing specific extensions:
*   `.lsp`: Standard Lisp extension.
*   `.sal`: Specific to the Nyquist environment.

The most recent version cited in available sources is **3.15**.

### Digital Presence
The official repository and information portal for Nyquist is hosted by Carnegie Mellon University (CMU) at `https://www.cs.cmu.edu/~music/cmp/nyquist/index.html`. It maintains a presence across ten Wikipedia languages, including English, German, French, and Japanese. Its unique identifiers include a Freebase ID (`/m/09fj2k`) and an AlternativeTo software ID.

## References

1. Freebase Data Dumps. 2013