Csound

Csoundはオーディオプログラミングのためのドメイン固有言語である。名称は、Csound以前の言語とは異なりC言語で書かれていることに由来する。
フリーソフトウェアであり、LGPL-2.1またはそれ以降のライセンスで利用可能である。
Csoundは、マサチューセッツ工科大学の Barry Vercoe によりMusic 11をベースに1985年に開発された。Music 11は、ベル研究所のマックス・マシューズが開発を主導したMUSIC-Nモデルに準じて、Vercoeが開発したものである。開発は1990年代から続いており、バス大学の John Fitch が主導している。バージョン5の文書化された最初のリリースは、2006年3月18日のバージョン5.01である。主な開発関係者は、Istvan Varga、Gabriel Maldonado（画像処理機能を追加した CsoundAV を開発）、Robin Whittle、Richard Karpen、Iain McCurdy、Michael Gogins、Matt Ingalls、Steven Yi、Richard Boulanger、Victor Lazzarini、Joachim Heintz である。
長年に渡って開発されてきたため、現時点で1700種類のユニットジェネレーターが存在する。Csound の利点はそのモジュール性とユーザーによる拡張性の高さにある。Csound は、の基礎となる言語である(SAOL) と密接な関係がある。
Csound は2種類の特別な形式のテキストファイルを入力として使用する。"orchestra" ファイルは楽器の性質などを記述し、"score" ファイルは楽譜などの時系列パラメータを記述する。Csound はこれらのファイルにある命令群を実行し、音声ファイルを生成したり、リアルタイムで音声を出力したりする。
"orchestra" ファイルと "score" ファイルは XML タグを使って1つにまとめることも可能である（拡張子 .csd を持つ CSD ファイル）。そのような統合された Csound データファイルの例を以下に示す。これは、1kHzの正弦波をサンプリング周波数 44.1 kHz で1秒間鳴らすWAVファイルを生成するものである。
Csoundは、Csound 5 へのバージョンアップ時にかなりの改善と拡張がなされており、実質的にAPIによるソフトウェア・ライブラリーとなっている。基本となるC言語のAPIに加え、Python、Java、LISP、Tcl、C++、Haskell (純粋関数からCsoundを制御できる) のAPIがある。
他の多くのプログラミング言語と同様、Csound で大きなプログラムを開発する場合、統合開発環境が役立つ。