updated references

This commit is contained in:
2025-01-28 08:18:45 +00:00
parent 176122d4c1
commit 89f37284e4
5 changed files with 88 additions and 29 deletions

View File

@@ -453,7 +453,7 @@ On the other hand, in programming environments that inherit the Unit
Generator paradigm, such as Pure Data \citep{puckette_pure_1997}, Max
(whose signal processing functionalities were ported from Pure Data as
MSP), SuperCollider \citep{mccartney_supercollider_1996}, and ChucK
\citep{wangChucKStronglyTimed2015}, primitive UGens are implemented in
\citep{wang_chuck_2015}, primitive UGens are implemented in
general-purpose languages like C or C++. If users wish to define
low-level UGens (External Objects), they need to set up a development
environment for C or C++.
@@ -602,13 +602,13 @@ rare, with only a few examples like LuaAV \citep{wakefield2010}.
Instead, an approach has emerged to create general-purpose languages
specifically designed for use in music from the ground up. One prominent
example is \textbf{Extempore}, a live programming environment developed
by Sorensen \citep{sorensenExtemporeDesignImplementation2018}. Extempore
consists of Scheme, a LISP-based language, and xtlang, a
meta-implementation on top of Scheme. While xtlang requires users to
write hardware-oriented type signatures similar to those in C, it
leverages the LLVM compiler infrastructure \citep{Lattner} to
just-in-time (JIT) compile signal processing code, including sound
manipulation, into machine code for high-speed execution.
by Sorensen \citep{sorensen_extempore_2018}. Extempore consists of
Scheme, a LISP-based language, and xtlang, a meta-implementation on top
of Scheme. While xtlang requires users to write hardware-oriented type
signatures similar to those in C, it leverages the LLVM compiler
infrastructure \citep{Lattner} to just-in-time (JIT) compile signal
processing code, including sound manipulation, into machine code for
high-speed execution.
The expressive power of general-purpose languages and compiler
infrastructures like LLVM have given rise to an approach focused on
@@ -622,13 +622,13 @@ Faust can be transpiled into general-purpose languages such as C, C++,
or Rust and can also be used as an External Object in environments like
Max or Pure Data.
Languages like \textbf{Kronos}
\citep{noriloKronosReimaginingMusical2016} and \textbf{mimium}
\citep{matsuura2021}, which are based on the more general computational
model of lambda calculus, focus on PCM-based signal processing while
exploring interactive meta-operations on programs \citep{Norilo2016} and
balancing self-contained semantics with interoperability with other
general-purpose languages \citep{matsuura2024}.
Languages like \textbf{Kronos} \citep{norilo2015} and \textbf{mimium}
\citep{matsuura_mimium_2021}, which are based on the more general
computational model of lambda calculus, focus on PCM-based signal
processing while exploring interactive meta-operations on programs
\citep{Norilo2016} and balancing self-contained semantics with
interoperability with other general-purpose languages
\citep{matsuura_lambda-mmm_2024}.
Domain-specific languages (DSLs) are constructed within a double bind:
they aim to specialize in a particular purpose while still providing a
@@ -712,12 +712,13 @@ general.
In a broader sense, the creation of programming languages for music has
also expanded to the individual level. Examples include \textbf{Gwion}
by Astor, which builds on ChucK and enhances its abstraction
capabilities with features like lambda functions \citep{astorGwion2017};
\textbf{Vult}, a DSP transpiler language created by Ruiz for his modular
synthesizer hardware \citep{ruizVultLanguage2020}; and a UGen-based live
coding environment designed for web execution, \textbf{Glicol}
\citep{lan_glicol_2020}. However, these efforts have not yet been
adequately integrated into academic discourse.
capabilities with features like lambda functions
\citep{astor_gwion_2017}; \textbf{Vult}, a DSP transpiler language
created by Ruiz for his modular synthesizer hardware
\citep{ruiz_vult_2020}; and a UGen-based live coding environment
designed for web execution, \textbf{Glicol} \citep{lan_glicol_2020}.
However, these efforts have not yet been adequately integrated into
academic discourse.
Conversely, practical knowledge of university-researched languages from
the past, as well as real-time hardware-oriented systems from the 1980s,