From eb7b867bdd7581fc5257ae8a70ecfac5960cf682 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=BE=E6=B5=A6=20=E7=9F=A5=E4=B9=9F=20Matsuura=20Tomoy?= =?UTF-8?q?a?= Date: Wed, 23 Apr 2025 10:11:30 +0000 Subject: [PATCH] updated from proofreading --- abstract.tex | 12 +- content.tex | 522 ++++++++++++++++++++++++++------------------------- main.bib | 10 +- main.md | 94 +++++----- main.pdf | Bin 170313 -> 169664 bytes main.tex | 2 +- sed.js | 23 +++ 7 files changed, 349 insertions(+), 314 deletions(-) create mode 100644 sed.js diff --git a/abstract.tex b/abstract.tex index 47d460d..ad64fd3 100644 --- a/abstract.tex +++ b/abstract.tex @@ -1,2 +1,10 @@ -This paper critically reviews the history of programming languages for music, distinct from computer music as a genre, by drawing on discussions from sound studies. The paper focuses on the universalist assumptions around pulse-code modulation and the Unit Generator concept established by the MUSIC-N family, which established a lineage of role between composers and scientists which tends to turn -composers into consumers. The paper concludes that programming languages for music developed after the 2000s present alternatives to the often-invisible technological infrastructures surrounding music, such as formats and protocols, rather than solely aiming to create novel musical styles. \ No newline at end of file +This paper critically reviews the history of programming languages for +music, distinct from computer music as a genre, by drawing on +discussions from sound studies. The paper focuses on the universalist +assumptions around pulse-code modulation and the Unit Generator concept +established by the MUSIC-N family, which established a lineage of role +between composers and scientists which tends to turn composers into +consumers. The paper concludes that programming languages for music +developed after the 2000s present alternatives to the often-invisible +technological infrastructures surrounding music, such as formats and +protocols, rather than solely aiming to create novel musical styles. diff --git a/content.tex b/content.tex index 099f46e..820bb6c 100644 --- a/content.tex +++ b/content.tex @@ -1,12 +1,12 @@ \section{Introduction}\label{introduction} -Programming languages and environments for music, for instance, Max, Pure Data, -Csound, and SuperCollider, has been referred to as ``Computer Music -Language''\citep{McCartney2002, Nishino2016, McPherson2020}, ``Language -for Computer Music''\citep{Dannenberg2018}, and ``Computer Music -Programming Systems''\citep{Lazzarini2013}, though there is no clear +Programming languages and environments for music such as Max, Pure Data, +Csound, and SuperCollider, have been referred to as ``computer music +language''\citep{McCartney2002, Nishino2016, McPherson2020}, ``language +for computer music''\citep{Dannenberg2018}, and ``computer music +programming systems''\citep{Lazzarini2013}, though there is no clear consensus on the use of these terms. However, as the shared term -``Computer Music'' implies, these programming languages are deeply +``computer music'' implies, these programming languages are deeply intertwined with the history of technology-driven music, which developed under the premise that ``almost any sound can be produced''\citep[p557]{mathews1963} through the use of computers. @@ -15,89 +15,86 @@ In the early days, when computers existed only in research laboratories and neither displays nor mice existed, creating sound or music with computers was inevitably equivalent to programming. Today, however, programming as a means to produce sound on a computer---rather than -employing Digital Audio Workstation (DAW) software like Pro Tools is not -popular. In other words, programming languages for music developed after -the proliferation of personal computers are the softwares that -intentionally chose programming (whether textual or graphical) as their -frontend for making sound. +employing digital audio workstation (DAW) software, such as Pro Tools is +not popular. In other words, programming languages for music developed +after the proliferation of personal computers are the software tools +that intentionally chose programming (whether textual or graphical) as +their frontend for making sound. Since the 1990s, the theoretical development of programming languages and the various constraints required for real-time audio processing have significantly increased the specialized knowledge necessary for developing programming languages for music today. Furthermore, some languages developed after the 2000s are not necessarily aimed at -pursuing new forms of musical expression. There is still no unified perspective on how the value of those languages should be evaluated. +pursuing new forms of musical expression, and there is still no unified +perspective on how their values should be evaluated. -In this paper, a critical historical review is conducted by drawing on -discussions from sound studies alongside existing surveys, aiming to -consider programming languages for music independently from computer -music as the specific genre. +This paper is a critical historical review that draws on discussions +from sound studies and existing surveys to examine programming languages +for music as distinct from computer music as the specific genre. \subsection{Use of the Term ``Computer Music''}\label{use-of-the-term-computer-music} -The term ``Computer Music,'' despite its literal and potentially broad -meaning, has been noted for being used within a narrowly defined -framework tied to specific styles or communities, as represented in -Ostertag's \emph{Why Computer Music Sucks}\citep{ostertag1998} since the -1990s. +Since the 1990s, the term ``computer music,'' despite its literal and +potentially broad meaning, has been noted for being used within a +narrowly defined framework tied to specific styles or communities, as +explored in Ostertag's \emph{Why Computer Music +Sucks}\citep{ostertag1998}. -As Eric Lyon observed nearly two decades ago, it is now nearly impossible to +As Lyon observed nearly two decades ago, it is now nearly impossible to imagine a situation in which computers are not involved at any stage from the production to experience of music\citep[p1]{lyon_we_2006}. The -necessity of using the term ``Computer Music'' to describe academic -contexts has consequently diminished. +necessity of using the term ``computer music'' in academic contexts has +consequently diminished. Holbrook and Rudi extended Lyon's discussion by proposing the use of -frameworks like Post-Acousmatic\citep{adkins2016} to redefine ``Computer -Music.'' Their approach incorporates the tradition of pre-computer -experimental/electronic music, situating it as part of the broader -continuum of technology-based or technology-driven -music\citep{holbrook2022}. +frameworks such as post-acoutmatic\citep{adkins2016} to redefine +computer music. Their approach situates the tradition of pre-computer +experimental/electronic music as part of the broader continuum of +technology-based or technology-driven music\citep{holbrook2022}. -While the strict definition of Post-Acousmatic music is deliberately +Although the strict definition of post-acousmatic music is deliberately left open, one of its key aspects is the expansion of music production from institutional settings to individuals and as well as the diversification of technological usage\citep[p113]{adkins2016}. However, -while the Post-Acousmatic discourse integrates the historical fact that -declining computer costs and increasing accessibility beyond -laboratories have enabled diverse musical expressions, it still -marginalizes much of the music that is ``just using computers'' and -fails to provide insights into this divided landscape. +despite integrating the historical fact that declining computer costs +and increasing accessibility beyond laboratories have enabled diverse +musical expressions, the post-acousmatic discourse still marginalizes +much of the music that is ``just using computers'' and fails to provide +insights into this divided landscape. Lyon argues that the term ``computer music'' is a style-agnostic -definition almost like ``piano music,'' implying that it ignores the -style and form inside music produced by the instrument. - -However, one of the defining characteristics of computers as a medium -lies in their ability to treat musical styles themselves as subjects of -meta-manipulation through simulation and modeling. When creating -instruments with computers or when using such instruments, sound -production involves programming---manipulating symbols embedded in a -particular musical culture. This recursive embedding of language and -recognition, which construct that musical culture, into the resulting -music is a process that goes beyond what is possible with acoustic -instruments or analog instruments. Magnusson refers to this -characteristic of digital instruments as ``Epistemic Tools'' and points -out that the computer serves to ``create a snapshot of musical theory, -freezing musical culture in time'' \citep[p.173]{Magnusson2009} through -formalization. +definition, almost like ``piano music,'' implying that it ignores the +style and form of music produced by the instrument. However, one of the +defining characteristics of computers as a medium lies in their ability +to treat musical styles themselves as subjects of meta-manipulation +through simulation and modeling. When creating instruments with +computers or using such instruments, sound production involves +programming---manipulating symbols embedded in a particular musical +culture. This recursive embedding of language and recognition, which +construct that musical culture, into the resulting music is a process +that exceeds what is possible with acoustic instruments or analog +instruments. Magnusson refers to this characteristic of digital +instruments as ``epistemic tools'' and points out that the computer +serves to ``create a snapshot of musical theory, freezing musical +culture in time'' \citep[p.173]{Magnusson2009} through formalization. Today, many people use computers for music production not because they consciously leverage the uniqueness of the meta-medium, but simply because there are no quicker or more convenient alternatives available. -Even so, within a musical culture where computers are used as a -reluctant choice, musicians are inevitably influenced by the underlying -infrastructures like software, protocols, and formats. As long as the -history of programming languages for music remains intertwined with the -history of computer music as it relates to specific genres or -communities, it becomes difficult to analyze music created with -computers as merely a passive means. +Even so, within a musical culture where computers are used out of +necessity rather than preference, musicians are inevitably influenced by +the underlying infrastructures such as software, protocols, and formats. +As long as the history of programming languages for music remains +intertwined with the history of computer music as it relates to specific +genres or communities, it will be difficult to analyze music created +with computers as merely a passive means. In this paper, the history of programming languages for music is -reexamined with an approach that, in contrast to Lyon, adopts a -radically style-agnostic perspective. Rather than focusing on what has -been created with these tools, the emphasis is placed on how these tools +reexamined with an approach that, unlike Lyon's, adopts a radically +style-agnostic perspective. Rather than focusing on what has been +created with these tools, the emphasis is placed on how these tools themselves have been constructed. The paper centers on the following two topics: 1. A critique of the universality of sound representation using pulse-code modulation (PCM)---the foundational concept underlying most @@ -112,9 +109,9 @@ internal workings. Ultimately, the paper concludes that programming languages for music developed since the 2000s are not solely aimed at creating new music but also serve as alternatives to the often-invisible technological -infrastructures surrounding music, such as formats and protocols. By -doing so, the paper proposes new perspectives for the historical study -of music created with computers. +infrastructures surrounding music such as formats and protocols. Thus, +the paper proposes new perspectives for the historical study of music +created with computers. \section{PCM and Early Computer Music}\label{pcm-and-early-computer-music} @@ -126,12 +123,11 @@ UK and Australia prior to MUSIC have also been documented\citep{doornbusch2017}. The earliest experiments with sound generation on computers in the 1950s -involved controlling the intervals of one-bit pulses to -control pitch. This was partly because the operational clock frequencies -of early computers fell within the audible range, making the -sonification of electrical signals a practical and cost-effective -debugging method compared to visualizing them on displays or -oscilloscopes. +involved controlling the intervals of one-bit pulses to control pitch. +This was partly because the operational clock frequencies of early +computers fell within the audible range, making the sonification of +electrical signals a practical and cost-effective debugging method +compared to visualizing them on displays or oscilloscopes. For instance, Louis Wilson, who was an engineer of the BINAC in the UK, noticed that an AM radio placed near the computer could pick up weak @@ -142,18 +138,18 @@ debugging. Frances Elizabeth Holberton took this a step further by programming the computer to generate pulses at desired intervals, creating melodies in 1949\citep{woltman1990}. -Also, some computers at this time, such as the CSIR Mark I (CSIRAC) in -Australia often had primitive ``hoot'' instructions that emit a single -pulse to a speaker. Early sound generation using computers, including -the BINAC and CSIR Mark I, primarily involved playing melodies of -existing music. +Further, some computers at this time, such as the CSIR Mark I (CSIRAC) +in Australia often had primitive ``hoot'' instructions that emitted a +single pulse to a speaker. Early sound generation using computers, +including the BINAC and CSIR Mark I, primarily involved playing melodies +of existing music. -However, not all sound generation at this time was merely involved the +However, not all sound generation at this time was merely the reproduction of existing music. Doornbusch highlights experiments on the Pilot ACE (the Prototype for Automatic Computing Engine) in the UK, which utilized acoustic delay line memory to produce unique sounds\citep[pp.303-304]{doornbusch2017}. Acoustic delay line memory, -used as the main memory in early computers such as the BINAC and the +used as the main memory in early computers, such as the BINAC and the CSIR Mark I, employed the feedback of pulses traveling through mercury via a speaker and microphone setup to retain data. Donald Davis, an engineer on the ACE project, described the sounds it produced as @@ -171,9 +167,9 @@ into colored noise as the complexity went beyond human understanding. This music arose unintentionally during program optimization and was made possible by the ``misuse'' of switches installed for debugging -delay line memory. Media scholar Miyazaki described the practice of +delay line memory. Media scholar, Miyazaki, described the practice of listening to sounds generated by algorithms and their bit patterns, -integrated into programming, as ``Algo- \emph{rhythmic} +integrated into programming, as ``Algo-\emph{rhythmic} Listening''\citep{miyazaki2012}. Doornbusch warns against ignoring these early computer music practices @@ -181,22 +177,21 @@ simply because they did not directly influence subsequent research\citep[p.305]{doornbusch2017}. Indeed, the sounds produced by the Pilot ACE challenge the post-acousmatic historical narrative, which suggests that computer music transitioned from being democratized in -closed electro-acoustic music laboratories to individual musicians. +closed electro-\\acoustic music laboratories to being embraced by +individual musicians. This is because the sounds generated by the Pilot ACE were not created by musical experts, nor were they solely intended for debugging purposes. Instead, they were programmed with the goal of producing interesting sounds. Moreover, these sounds were tied to the hardware of -the acoustic delay line memory---a feature that was likely difficult to +the acoustic delay line memory---a feature that is likely difficult to replicate, even in today's sound programming environments. -Similarly, in the 1960s at MIT, Peter Samson took advantage of the -debugging speaker on the TX-0, a machine that had become outdated and -was freely available for students to use. He conducted experiments in -which he played melodies, such as Bach fugues, using ``hoot'' -instruction\citep{levy_hackers_2010}. Samson's experiments with the TX-0 -later evolved into the creation of a program that allowed melodies to be -described using text within MIT. +Similarly, in the 1960s at the Massachusetts Institute of Technology +(MIT), Peter Samson exploited the debugging speaker on the TX-0, a +machine that had become outdated and was freely available for students +to use. He conducted experiments in which he played melodies, such as +Bach fugues, using ``hoot'' instruction\citep{levy_hackers_2010}. Building on this, Samson developed a program called the Harmony Compiler for the DEC PDP-1, which was derived from the TX-0. This program gained @@ -216,26 +211,24 @@ PCM}\label{acousmatic-listening-the-premise-of-the-universality-of-pcm} One of the reasons why MUSIC led to subsequent advancements in research was not simply that it was developed early, but because it was the first -to implement, but because it was the first to implement sound -representation on a computer based on \textbf{pulse-code modulation -(PCM)}, which theoretically can generate ``almost any -sound''. +to implement sound representation on a computer based on PCM, which +theoretically can generate ``almost any sound''. PCM, the foundational digital sound representation today, involves sampling audio waveforms at discrete intervals and quantizing the sound pressure at each interval as discrete numerical values. -The issue with the universalism of PCM in the history of computer music -is inherent in the concept of Acousmatic Listening, which serves as a -premise for Post-Acousmatic. Acousmatic, introduced by Piegnot as a -listening style for tape music such as musique concrète and later -theorized by Schaeffer\citep[p106]{adkins2016}, refers to a mode of -listening in which the listener refrains from imagining a specific sound -source. This concept has been widely applied in theories of listening to -recorded sound, including Michel Chion's analysis of sound design in -film. +The problem with the universalism of PCM in the history of computer +music is inherent in the concept of acousmatic listening, which serves +as a premise for post-acousmatic. Acousmatic listening, introduced by +Piegnot as a listening style for tape music, such as musique concrète, +and later theorized by Schaeffer\citep[p106]{adkins2016}, refers to a +mode of listening in which the listener refrains from imagining a +specific sound source. This concept has been widely applied in theories +of listening to recorded sound, including Michel Chion's analysis of +sound design in film. -However, as sound studies scholar Jonathan Sterne has pointed out, +However, as sound studies scholar, Jonathan Sterne, has observed, discourses surrounding acousmatic listening often work to delineate pre-recording auditory experiences as ``natural'' by contrast\footnote{Sterne later critiques the phenomenological basis of @@ -264,9 +257,9 @@ noise from it. Sampling theory builds on this premise through Shannon's information theory by statistically modeling human auditory characteristics: it assumes that humans cannot discern volume differences below certain thresholds or perceive vibrations outside -specific frequency ranges. By limiting representation to the reconizable range, -sampling theory ensures that all audible sounds can be effectively -encoded. +specific frequency ranges. By limiting representation to the reconizable +range, sampling theory ensures that all audible sounds can be +effectively encoded. Incidentally, the actual implementation of PCM in MUSIC I only allowed for monophonic triangle waves with controllable volume, pitch, and @@ -274,24 +267,25 @@ timing\citep{Mathews1980}. Would anyone today describe such a system as capable of producing ``almost any sound''? Even when considering more contemporary applications, processes like -ring modulation (RM), amplitude modulation (AM), or distortion often -generate aliasing artifacts unless proper oversampling is applied. These +ring modulation and amplitude modulation, or distortion often cause +aliasing artifacts unless proper oversampling is applied. These artifacts occur because PCM, while universally suitable for reproducing recorded sound, is not inherently versatile as a medium for generating -new sounds. As Puckette has argued, alternative representations, for instance, representation by a sequence of linear segments or physical modeling synthesis, offer -other possibilities\citep{puckette2015}. Therefore, PCM is not a -completely universal tool for creating sound. +new sounds. As Puckette argues, alternative representations, for +instance, representation by a sequence of linear segments or physical +modeling synthesis, offer other possibilities\citep{puckette2015}. +Therefore, PCM is not a completely universal tool for creating sound. \section{What Does the Unit Generator Hide?}\label{what-does-the-unit-generator-hide} -Beginning with version III, MUSIC took the form of a block diagram compiler that processes two input sources: a score -language, which represents a list of time-varying parameters, and an -orchestra language, which describes the connections between \textbf{Unit -Generators} such as oscillators and filters. In this paper, the term -``Unit Generator''refers to a signal processing module whose -implementation is either not open or written in a language different -from the one used by the user. +Beginning with Version III, MUSIC took the form of a block diagram +compiler that processes two input sources: a score language, which +represents a list of time-varying parameters, and an orchestra language, +which describes the connections between \textbf{unit generator (UGen)} +such as oscillators and filters. In this paper, the term ``UGen'' refers +to a signal processing module whose implementation is either not open or +written in a language different from the one used by the user. The MUSIC family, in the context of computer music research, achieved success for performing sound synthesis based on PCM but this success @@ -316,10 +310,10 @@ willing to experiment.\citep[p17]{Mathews1980} This clear delineation of roles between musicians and scientists became one of the defining characteristics of post-MUSIC computer music -research. Paradoxically, while computer music research aimed to create -sounds never heard before, it also paved the way for further research by -allowing musicians to focus on composition without having to understand -the cumbersome work of programming. +research. Paradoxically, although computer music research aimed to +create sounds never heard before, it also paved the way for further +research by allowing musicians to focus on composition without having to +understand the cumbersome work of programming. \subsection{Example: Hiding Internal State Variables in Signal Processing}\label{example-hiding-internal-state-variables-in-signal-processing} @@ -329,16 +323,15 @@ language and an orchestra language, the actual implementation of each programming language varies significantly, even within the series. One notable but often overlooked example is MUSIGOL, a derivative of -MUSIC IV \citep{innis_sound_1968}. In MUSIGOL, not only was the system -itself but even the score and orchestra defined by user were written -entirely as ALGOL 60 language. Similar to today's Processing or Arduino, -MUSIGOL is one of the earliest internal DSL (Domain-specific languages) for -music, which means implemented as an library \footnote{While - MUS10, used at Stanford University, was not an internal DSL, it was - created by modifying an existing ALGOL parser \citep[p.248]{loy1985}.}. -(Therefore, according to the definition of Unit Generator provided in -this paper, MUSIGOL does not qualify as a language that uses Unit -Generators.) +MUSIC IV \citep{innis_sound_1968}. In MUSIGOL, the system, the score and +orchestra defined by user were written entirely as ALGOL 60 language. +Similar to today's Processing or Arduino, MUSIGOL is one of the earliest +internal domain-specific languages (DSL) for music; thus, it is +implemented as an library\footnote{While MUS10, used at Stanford + University, was not an internal DSL, it was created by modifying an + existing ALGOL parser \citep[p.248]{loy1985}.}. (According to the +definition in this paper, MUSIGOL does not qualify as a language that +uses UGen.) The level of abstraction deemed intuitive for musicians varied across different iterations of the MUSIC N series. This can be illustrated by @@ -358,28 +351,27 @@ to the normalized values of the coefficients \(I_2\) and \(I_3\), divided by \(I_1\) (as a result, the overall gain of the filter can be greater or less than 1). The parameters \passthrough{\lstinline!Pi!} and \passthrough{\lstinline!Pj!} are normally used to receive parameters -from the Score, specifically among the available +from the score, specifically among the available \passthrough{\lstinline!P0!} to \passthrough{\lstinline!P30!}. In this case, however, these parameters are repurposed as general-purpose memory -to temporarily store feedback signals. Similarly, other Unit Generators, -such as oscillators, reuse note parameters to handle operations like -phase accumulation. As a result, users needed to manually calculate -feedback gains based on the desired frequency -characteristics\footnote{It is said that a preprocessing feature called - \passthrough{\lstinline!CONVT!} could be used to transform frequency - characteristics into coefficients - \citep[p77]{mathews_technology_1969}.}, and they also had to account -for at least two sample memory spaces. +to temporarily store feedback signals. Similarly, other UGens, such as +oscillators, reuse note parameters to handle operations like phase +accumulation. As a result, users needed to manually calculate feedback +gains based on the desired frequency characteristics\footnote{It is said + that a preprocessing feature called \passthrough{\lstinline!CONVT!} + could be used to transform frequency characteristics into coefficients + \citep[p77]{mathews_technology_1969}.}, and they also had to considder +at least two sample memory spaces. -On the other hand, in later MUSIC 11, and its successor Csound by Barry -Vercoe, the band-pass filter is defined as a Unit Generator (UGen) named +On the other hand, in newer MUSIC 11, and its successor, Csound, by +Barry Vercoe, the band-pass filter is defined as a UGen named \passthrough{\lstinline!reson!}. This UGen takes four parameters: the input signal, center cutoff frequency, bandwidth, and Q factor\citep[p248]{vercoe_computer_1983}. Unlike previous implementations, users no longer need to calculate coefficients manually, nor do they need to be aware of the two-sample memory space. However, in MUSIC 11 and Csound, it is possible to implement this -band-pass filter from scratch as a User-Defined Opcode (UDO) as shownin +band-pass filter from scratch as a user-defined opcode (UDO) as shown in Listing \ref{lst:reson}. Vercoe emphasized that while signal processing primitives should allow for low-level operations, such as single-sample feedback, and eliminate black boxes, it is equally important to provide @@ -391,7 +383,7 @@ clutter'') when users do not need to understand the internal details FLT I1 O I2 I3 Pi Pj; \end{lstlisting} -\begin{lstlisting}[caption={Example of scratch implementation and built-in operation of RESON UGen respectively, in MUSIC11. Retrieved from the original paper. (Comments are omitted for the space restriction.)}, label=lst:reson] +\begin{lstlisting}[caption={Example of scratch implementation and built-in operation of RESON UGen respectively, in MUSIC11. Retrieved from the original paper. (Comments are omitted owing to space restriction.)}, label=lst:reson] instr 1 la1 init 0 la2 init 0 @@ -411,38 +403,38 @@ a1 reson a1,p5,p6,1 endin \end{lstlisting} -On the other hand, in succeeding 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 +On the other hand, in succeeding environments that inherit the UGen +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{wang_chuck_2015}, primitive UGens are implemented in -general-purpose languages like C or C++\footnote{ChucK later introduced - ChuGen, which is similar extension to Csound's UDO, allowing users to - define UGens within the ChucK language itself \citep{Salazar2012}. - However, not all existing UGens are replaced by UDOs by default both - in Csound and ChucK, which remain supplemental features possibly - because the runtime performance of UDO is inferior to natively - implemented UGens.}. If users wish to define low-level UGens (called -external objects in Max and Pd), they need to set up a development -environment for C or C++. +general-purpose languages such as C or C++\footnote{ChucK later + introduced ChuGen, which is similar extension to Csound's UDO, + allowing users to define UGens within the ChucK language itself + \citep{Salazar2012}. However, not all existing UGens are replaced by + UDOs by default both in Csound and ChucK, which remain supplemental + features possibly because the runtime performance of UDO is inferior + to natively implemented UGens.}. If users wish to define low-level +UGens (called external objects in Max and Pd), they need to set up a +development environment for C or C++. When UGens are implemented in low-level languages like C, even if the implementation is open-source, the division of knowledge effectively forces users (composers) to treat UGens as black boxes. This reliance on UGens as black boxes reflects and deepens the division of labor between -musicians and scientists that was established in MUSIC though it can be +musicians and scientists that was established in MUSIC, though it can be interpreted as both a cause and a result. -For example, Puckette, the developer of Max and Pure Data, noted that -the division of labor at IRCAM between Researchers, Musical -Assistants(Realizers), and Composers has parallels in the current Max -ecosystem, where roles are divided among Max developers themselves, -developers of external objects, and Max users \citep{puckette_47_2020}. -As described in the ethnography of 1980s IRCAM by anthropologist -Georgina Born, the division of labor between fundamental research -scientists and composers at IRCAM was extremely clear. This structure -was also tied to the exclusion of popular music and its associated -technologies from IRCAM's research focus \citep{Born1995}. +For example, Puckette, the developer of Max and Pure Data, notes that +the division of labor at IRCAM between researchers, musical assistants +(realizers), and composers has parallels in the current Max ecosystem, +where roles are divided among Max developers themselves, developers of +external objects, and Max users \citep{puckette_47_2020}. As described +in the ethnography of 1980s IRCAM by anthropologist Georgina Born, the +division of labor between fundamental research scientists and composers +at IRCAM was extremely clear. This structure was also tied to the +exclusion of popular music and its associated technologies from IRCAM's +research focus \citep{Born1995}. However, such divisions are not necessarily the result of differences in values along the axes analyzed by Born, such as @@ -467,37 +459,49 @@ particular type of consumer. \citep[p.89]{theberge_any_1997} This argument can be extended beyond electronic music to encompass computer-based music in general. For example, media researcher Lori -Emerson noted that while the proliferation of personal computers began -with the vision of a ``metamedium''---tools that users could modify -themselves, as exemplified by Xerox PARC's Dynabook---the vision was -ultimately realized in an incomplete form through devices like the -Macintosh and iPad, which distanced users from programming by +Emerson noted that although the proliferation of personal computers +began with the vision of a ``metamedium''---tools that users could +modify themselves, as exemplified by Xerox PARC's Dynabook---the vision +was ultimately realized in an incomplete form through devices such as +the Macintosh and iPad, which distanced users from programming by black-boxing functionality \citep{emerson2014}. In fact, Alan Kay, the architect behind the Dynabook concept, remarked that while the iPad's appearance may resemble the ideal he originally envisioned, its lack of -extensibility through programming renders it merely a device for media +extensibility through programming rendered it merely a device for media consumption \citep{kay2019}. -Musicians have attempted to resist the consumeristic use of those tools through appropriation and exploitation \citep{kelly_cracked_2009}. However, just as circuit bending has been narrowed down to its potential by a literal black box - one big closed IC of aggregated functions \citep[p225]{inglizian_beyond_2020}, and glitching has been recovered from methodology to a superficial auditory style \citep{casconeErrormancyGlitchDivination2011}, capitalism-based technology expands in a direction that does not permit users to misuse. Under these circumstances, designing a new programming language does not merely provide musicians with the means to create new music, but is itself contextualized as a musicking practice following hacking, an active reconstruction of the technological infrastructure that is allowed to be hacked. +Musicians have attempted to resist the consumeristic use of those tools +through appropriation and exploitation \citep{kelly_cracked_2009}. +However, just as circuit bending has been narrowed down to its potential +by a literal black box - one big closed IC of aggregated functions +\citep[p225]{inglizian_beyond_2020}, and glitching has shifted from +methodology to a superficial auditory style +\citep{casconeErrormancyGlitchDivination2011}, capitalism-based +technology expands in a direction that prevents users from misusing it. +Under these circumstances, designing a new programming language does not +merely provide musicians with the means to create new music, but is +itself contextualized as a musicking practice following hacking, an +active reconstruction of the technological infrastructure that is +allowed to be hacked. \section{Context of Programming Languages for Music After 2000}\label{context-of-programming-languages-for-music-after-2000} -Based on the discussions thus far, music programming languages developed -after the 2000s can be categorized into two distinct directions: those -that narrow the scope of the language's role by introducing alternative -abstractions at a higher-level, distinct from the UGen paradigm, and -those that expand the general-purpose capabilities of the language, -reducing black-boxing. +Under this premise, music programming languages developed after the +2000s can be categorized into two distinct directions: those that narrow +the scope of the language's role by introducing alternative abstractions +at a higher-level, distinct from the UGen paradigm, and those that +expand the general-purpose capabilities of the language, reducing +black-boxing. Languages that pursued alternative higher-level abstractions have evolved alongside the culture of live coding, where performances are conducted by rewriting code in real time. The activities of the live -coding community, including groups such as TOPLAP since the 2000s, were -not only about turning coding itself into a performance but also served -as a resistance against laptop performances that relied on black-boxed -music software. This is evident in the community's manifesto, which -states, ``Obscurantism is dangerous'' +coding community, including groups, such as TOPLAP, since the 2000s, +were not only about turning coding itself into a performance but also +served as a resistance against laptop performances that relied on +black-boxed music software. This is evident in the community's +manifesto, which states, ``Obscurantism is dangerous'' \citep{toplap_manifestodraft_2004}. Languages implemented as clients for SuperCollider, such as \textbf{IXI} @@ -512,49 +516,49 @@ the abstraction of patterns in TidalCycles is not limited to music but can also be applied to visual patterns and other outputs, meaning it is not inherently tied to PCM-based waveform output as the final result. -On the other hand, due to their high-level design, these languages often -rely on ad-hoc implementations for tasks like sound manipulation and -low-level signal processing, such as effects. McCartney, the developer -of SuperCollider, stated that if general-purpose programming languages -were sufficiently expressive, there would be no need to create -specialized languages \citep{McCartney2002}. This prediction appears -reasonable when considering examples like MUSIGOL. However, in practice, -scripting languages that excel in dynamic program modification face -challenges in modern preemptive OS environments. For instance, dynamic -memory management techniques such as garbage collection can hinder -deterministic execution timing required for real-time processing +On the other hand, owing to their high-level design, these languages +often rely on ad-hoc implementations for tasks like sound manipulation +and low-level signal processing, such as effects. McCartney, the +developer of SuperCollider, stated that if general-purpose programming +languages were sufficiently expressive, there would be no need to create +specialized languages \citep{McCartney2002}, which appears reasonable +when considering examples like MUSIGOL. However, in practice, scripting +languages that excel in dynamic program modification face challenges in +modern preemptive operating system (OS) environments. For instance, +dynamic memory management techniques such as garbage collection can +hinder deterministic execution timing required for real-time processing \citep{Dannenberg2005}. -Historically, programming languages like FORTRAN or C served as a +Historically, programming languages, such as FORTRAN or C, served as a portable way for implementing programs across different architectures. However, with the proliferation of higher-level languages, programming in C or C++ has become relatively more difficult, akin to assembly language in earlier times. Furthermore, considering the challenges of portability not only across different CPUs but also diverse host environments such as OSs and the Web, these languages are no longer as -portable as they once were. Consequently, internal DSL for music -including signal processing have become exceedingly rare, with only a +portable as they once were. Consequently, internal DSL for music, +including signal processing, have become exceedingly rare, with only a few examples such as 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{sorensen_extempore_2018}. Extempore consists of -Scheme, a LISP-based language, and xtlang, a meta-implementation on top +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\citep{Lattner}, the compiler -infrastructure to just-in-time (JIT) compile signal -processing code, including sound manipulation, into machine code for -high-speed execution. +signatures similar to those in C, it leverages the compiler +infrastructure, LLVM\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 has given rise to an approach focused on +infrastructures, such as LLVM, has given rise to an approach focused on designing languages with mathematical formalization that reduces black-boxing. \textbf{Faust} \citep{Orlarey2009}, for instance, is a language that retains a graph-based structure akin to UGens but is built on a formal system called Block Diagram Algebra. Thanks to its -formalization, Faust can be transpiled into various low-level languages -such as C, C++, or Rust and can also be used as external objects in Max +formalization, Faust can be transpiled into various low-level languages, +such as C, C++, or Rust, and can also be used as external objects in Max or Pure Data. Languages like \textbf{Kronos} \citep{norilo2015} and \textbf{mimium} @@ -565,48 +569,48 @@ processing while exploring interactive meta-operations on programs interoperability with other general-purpose languages \citep{matsuura_lambda-mmm_2024}. -DSLs are constructed within a double bind: -they aim to specialize in a particular purpose while still providing a -certain degree of expressive freedom through coding. In this context, -efforts like Extempore, Kronos, and mimium are not merely programming -languages for music but are also situated within the broader research -context of functional reactive programming (FRP), which focuses on -representing time-varying values in computation. Most computing models -lack an inherent concept of real-time and instead operates based on -discrete computational steps. Similarly, low-level general-purpose -programming languages do not natively include primitives for real-time -concepts. Consequently, the exploration of computational models tied to -time ---a domain inseparable from music--- remains vital and has the -potential to contribute to the theoretical foundations of -general-purpose programming languages. +DSLs are constructed within a double bind; they aim to specialize in a +particular purpose while still providing a certain degree of expressive +freedom through coding. In this context, efforts like Extempore, Kronos, +and mimium are not merely programming languages for music but are also +situated within the broader research context of functional reactive +programming, which focuses on representing time-varying values in +computation. Most computing models lack an inherent concept of +real-time, operating instead based on discrete computational steps. +Similarly, low-level general-purpose programming languages do not +natively include primitives for real-time concepts. Consequently, the +exploration of computational models tied to time ---a domain inseparable +from music--- remains vital and has the potential to contribute to the +theoretical foundations of general-purpose programming languages. However, strongly formalized languages come with another trade-off. -While they allow UGens to be defined without black-boxing, understanding -the design and implementation of these languages often requires expert -knowledge. This can create a deeper division between language developers -and users, in contrast to the many but small and shallow divisions seen -in the multi-language paradigm, like SuperCollider developers, external -UGen developers, client language developers (e.g., TidalCycles), -SuperCollider users, and client language users. +Although they allow UGens to be defined without black-boxing, +understanding the design and implementation of these languages often +requires expert knowledge. This can create a deeper division between +language developers and users, in contrast to the many but small and +shallow divisions seen in the multi-language paradigm, such as +SuperCollider developers, external UGen developers, client language +developers (e.g., TidalCycles), SuperCollider users, and client language +users. Although there is no clear solution to this trade-off, one intriguing idea is the development of self-hosting languages for music---that is, -languages whose their own compilers are written in the language itself. -At first glance, this may seem impractical. However, by enabling users -to learn and modify the language's mechanisms spontaneously, this -approach could create an environment that fosters deeper engagement and -understanding among users. +languages whose compilers are written in the language itself. At first +glance, this may seem impractical. However, by enabling users to learn +and modify the language's mechanisms spontaneously, this approach could +create an environment that fosters deeper engagement and understanding +among users. \section{Conclusion}\label{conclusion} This paper has reexamined the history of computer music and music programming languages with a focus on the universalism of PCM and the -black-boxing tendencies of the Unit Generator paradigm. Historically, it -was expected that the clear division of roles between engineers and +black-boxing tendencies of the UGen paradigm. Historically, it was +expected that the clear division of roles between engineers and composers would enable the creation of new forms of expression using -computers. Indeed, from the perspective of Post-Acousmatic discourse, -some, such as Holbrook and Rudi, still consider this division to be a -positive development: +computers. Indeed, from the perspective of post-acousmatic discourse, +some scholars, such as Holbrook and Rudi, still consider this division +to be a positive development: \begin{quote} Most newer tools abstract the signal processing routines and variables, @@ -617,13 +621,13 @@ technologies.\citep[p2]{holbrook2022} \end{quote} However, this division of labor also creates a shared vocabulary (as -exemplified in the Unit Generator by Mathews) and serves to perpetuate -it. By portraying new technologies as something externally introduced, -and by focusing on the agency of those who create music with computers, -the individuals responsible for building programming environments, -software, protocols, and formats are rendered invisible -\citep{sterne_there_2014}. This leads to an oversight of the indirect -power relationships produced by these infrastructures. +exemplified in the UGen by Mathews) and serves to perpetuate it. By +portraying new technologies as something externally introduced, and by +focusing on the agency of those who create music with computers, the +individuals responsible for building programming environments, software, +protocols, and formats are rendered invisible \citep{sterne_there_2014}. +This leads to an oversight of the indirect power relationships produced +by these infrastructures. For this reason, future research on programming languages for music must address how the tools, including the languages themselves, contribute @@ -632,27 +636,27 @@ practice they enable), as well as the social (im)balances of power they produce. The academic value of the research on programming languages for music is -often vaguely asserted, using terms such as ``general'', ``expressive'', -and ``efficient''. However, it is difficult to argue these claims when +often vaguely asserted, using terms such as ``general,'' ``expressive,'' +and ``efficient.'' However, it is difficult to argue these claims when processing speed is no longer the primary concern. Thus, as with -Idiomaticity \citep{McPherson2020} by McPherson et al., we need to +idiomaticity \citep{McPherson2020} by McPherson et al., we need to develop and share a vocabulary for understanding the value judgments we make about music languages. In a broader sense, the development of programming languages for music has also expanded to the individual level. Examples include \textbf{Gwion} by Astor, which is inspired by ChucK and enhances its -abstraction, such as lambda functions \citep{astor_gwion_2017}; -\textbf{Vult}, a DSP transpiler language created by Ruiz for his modular -synthesizer hardware \citep{Ruiz2020}; and a UGen-based live coding -environment designed for web, \textbf{Glicol} \citep{lan_glicol_2020}. -However, these efforts have not yet been incorporate into academic -discourse. +abstraction through features, such as lambda functions +\citep{astor_gwion_2017}; \textbf{Vult}, a DSP transpiler language +created by Ruiz for his modular synthesizer hardware \citep{Ruiz2020}; +and a UGen-based live coding environment designed for web, +\textbf{Glicol} \citep{lan_glicol_2020}. However, these efforts have not +yet been incorporated into academic discourse. -Conversely, practical knowledge of past languages in 1960s as well as +Conversely, practical knowledge of past languages in 1960s, as well as real-time hardware-oriented systems from the 1980s, is gradually being -lost. While research efforts such as \emph{Inside Computer Music}, which -analyzes historical works of computer music, have begun +lost. Although research efforts such as \emph{Inside Computer Music}, +which analyzes historical works of computer music, have begun \citep{clarke_inside_2020}, an archaeological practice focused on the construction of computer music systems themselves will also be necessary. diff --git a/main.bib b/main.bib index 6d6070c..9906107 100644 --- a/main.bib +++ b/main.bib @@ -380,7 +380,7 @@ year = {2006}, journal = {Talk given at EMS 2006, Beijing}, urldate = {2025-01-17}, - howpublished = {\url{https://disis.music.vt.edu/eric/LyonPapers/Do\_We\_Still\_Need\_Computer\_Music.pdf}}, + howpublished = {https://disis.music.vt.edu/eric/LyonPapers/Do\_We\_Still\_Need\_Computer\_Music.pdf}, file = {/Users/tomoya/Zotero/storage/SK2DXEE8/Do_We_Still_Need_Computer_Music.pdf} } @@ -482,7 +482,7 @@ author = {Mathews, M.V.}, year = {1963}, month = nov, - journal = {Science,New Series}, + journal = {Science, New Series}, volume = {142}, number = {3592}, eprint = {1712380}, @@ -698,7 +698,7 @@ booktitle = {New {{Computational Paradigms}} for {{Computer Music}}}, author = {Orlarey, Yann and Fober, Dominique and Letz, St{\'e}phane and Letz, Stephane}, year = {2009}, - publisher = {DELATOUR FRANCE}, + publisher = {Delatour France}, urldate = {2020-03-28}, file = {/Users/tomoya/Zotero/storage/LB4PIMPY/full-text.pdf} } @@ -708,7 +708,7 @@ author = {Ostertag, Bob}, year = {1998}, urldate = {2025-01-17}, - howpublished = {\url{https://web.archive.org/web/20160312125123/http://bobostertag.com/writings-articles-computer-music-sucks.htm}}, + howpublished = {https://web.archive.org/web/20160312125123/http://bobostertag.com/writings-articles-computer-music-sucks.htm}, file = {/Users/tomoya/Zotero/storage/9QAGQSVS/writings-articles-computer-music-sucks.html} } @@ -783,7 +783,7 @@ } @inproceedings{Salazar2012, - title = {{{CHUGENS}}, {{CHUBGRAPHS}}, {{CHUGINS}}: 3 {{TIERS FOR EXTENDING CHUCK}}}, + title = {{{ChuGens}}, {{ChubGraphs}}, {{ChuGins}}: 3 {{Tiers}} for {{Extending ChucK}}}, booktitle = {International {{Computer Music Conference Proceedings}}}, author = {Salazar, Spencer and Wang, Ge}, year = {2012}, diff --git a/main.md b/main.md index 058409e..61484f9 100644 --- a/main.md +++ b/main.md @@ -1,32 +1,32 @@ ## Introduction -Programming languages and environments for music, for instance, Max, Pure Data, Csound, and SuperCollider, has been referred to as "Computer Music Language"[@McCartney2002;@Nishino2016;@McPherson2020], "Language for Computer Music"[@Dannenberg2018], and "Computer Music Programming Systems"[@Lazzarini2013], though there is no clear consensus on the use of these terms. However, as the shared term "Computer Music" implies, these programming languages are deeply intertwined with the history of technology-driven music, which developed under the premise that "almost any sound can be produced"[@mathews1963,p557] through the use of computers. +Programming languages and environments for music such as Max, Pure Data, Csound, and SuperCollider, have been referred to as "computer music language"[@McCartney2002;@Nishino2016;@McPherson2020], "language for computer music"[@Dannenberg2018], and "computer music programming systems"[@Lazzarini2013], though there is no clear consensus on the use of these terms. However, as the shared term "computer music" implies, these programming languages are deeply intertwined with the history of technology-driven music, which developed under the premise that "almost any sound can be produced"[@mathews1963,p557] through the use of computers. -In the early days, when computers existed only in research laboratories and neither displays nor mice existed, creating sound or music with computers was inevitably equivalent to programming. Today, however, programming as a means to produce sound on a computer—rather than employing Digital Audio Workstation (DAW) software like Pro Tools is not popular. In other words, programming languages for music developed after the proliferation of personal computers are the softwares that intentionally chose programming (whether textual or graphical) as their frontend for making sound. +In the early days, when computers existed only in research laboratories and neither displays nor mice existed, creating sound or music with computers was inevitably equivalent to programming. Today, however, programming as a means to produce sound on a computer—rather than employing digital audio workstation (DAW) software, such as Pro Tools is not popular. In other words, programming languages for music developed after the proliferation of personal computers are the software tools that intentionally chose programming (whether textual or graphical) as their frontend for making sound. -Since the 1990s, the theoretical development of programming languages and the various constraints required for real-time audio processing have significantly increased the specialized knowledge necessary for developing programming languages for music today. Furthermore, some languages developed after the 2000s are not necessarily aimed at pursuing new forms of musical expression. There is still no unified perspective on how the value of those languages should be evaluated. +Since the 1990s, the theoretical development of programming languages and the various constraints required for real-time audio processing have significantly increased the specialized knowledge necessary for developing programming languages for music today. Furthermore, some languages developed after the 2000s are not necessarily aimed at pursuing new forms of musical expression, and there is still no unified perspective on how their values should be evaluated. -In this paper, a critical historical review is conducted by drawing on discussions from sound studies alongside existing surveys, aiming to consider programming languages for music independently from computer music as the specific genre. +This paper is a critical historical review that draws on discussions from sound studies and existing surveys to examine programming languages for music as distinct from computer music as the specific genre. ### Use of the Term "Computer Music" -The term "Computer Music," despite its literal and potentially broad meaning, has been noted for being used within a narrowly defined framework tied to specific styles or communities, as represented in Ostertag's *Why Computer Music Sucks*[@ostertag1998] since the 1990s. +Since the 1990s, the term "computer music," despite its literal and potentially broad meaning, has been noted for being used within a narrowly defined framework tied to specific styles or communities, as explored in Ostertag's *Why Computer Music Sucks*[@ostertag1998]. -As Eric Lyon observed nearly two decades ago, it is now nearly impossible to imagine a situation in which computers are not involved at any stage from the production to experience of music[@lyon_we_2006, p1]. The necessity of using the term "Computer Music" to describe academic contexts has consequently diminished. +As Lyon observed nearly two decades ago, it is now nearly impossible to imagine a situation in which computers are not involved at any stage from the production to experience of music[@lyon_we_2006, p1]. The necessity of using the term "computer music" in academic contexts has consequently diminished. -Holbrook and Rudi extended Lyon's discussion by proposing the use of frameworks like Post-Acousmatic[@adkins2016] to redefine "Computer Music." Their approach incorporates the tradition of pre-computer experimental/electronic music, situating it as part of the broader continuum of technology-based or technology-driven music[@holbrook2022]. +Holbrook and Rudi extended Lyon's discussion by proposing the use of frameworks such as post-acoutmatic[@adkins2016] to redefine computer music. Their approach situates the tradition of pre-computer experimental/electronic music as part of the broader continuum of technology-based or technology-driven music[@holbrook2022]. -While the strict definition of Post-Acousmatic music is deliberately left open, one of its key aspects is the expansion of music production from institutional settings to individuals and as well as the diversification of technological usage[@adkins2016, p113]. However, while the Post-Acousmatic discourse integrates the historical fact that declining computer costs and increasing accessibility beyond laboratories have enabled diverse musical expressions, it still marginalizes much of the music that is "just using computers" and fails to provide insights into this divided landscape. +Although the strict definition of post-acousmatic music is deliberately left open, one of its key aspects is the expansion of music production from institutional settings to individuals and as well as the diversification of technological usage[@adkins2016, p113]. However, despite integrating the historical fact that declining computer costs and increasing accessibility beyond laboratories have enabled diverse musical expressions, the post-acousmatic discourse still marginalizes much of the music that is "just using computers" and fails to provide insights into this divided landscape. - Lyon argues that the term "computer music" is a style-agnostic definition almost like "piano music," implying that it ignores the style and form inside music produced by the instrument. + -However, one of the defining characteristics of computers as a medium lies in their ability to treat musical styles themselves as subjects of meta-manipulation through simulation and modeling. When creating instruments with computers or when using such instruments, sound production involves programming—manipulating symbols embedded in a particular musical culture. This recursive embedding of language and recognition, which construct that musical culture, into the resulting music is a process that goes beyond what is possible with acoustic instruments or analog instruments. Magnusson refers to this characteristic of digital instruments as "Epistemic Tools" and points out that the computer serves to "create a snapshot of musical theory, freezing musical culture in time" [@Magnusson2009, p.173] through formalization. +Lyon argues that the term "computer music" is a style-agnostic definition, almost like "piano music," implying that it ignores the style and form of music produced by the instrument. However, one of the defining characteristics of computers as a medium lies in their ability to treat musical styles themselves as subjects of meta-manipulation through simulation and modeling. When creating instruments with computers or using such instruments, sound production involves programming—manipulating symbols embedded in a particular musical culture. This recursive embedding of language and recognition, which construct that musical culture, into the resulting music is a process that exceeds what is possible with acoustic instruments or analog instruments. Magnusson refers to this characteristic of digital instruments as "epistemic tools" and points out that the computer serves to "create a snapshot of musical theory, freezing musical culture in time" [@Magnusson2009, p.173] through formalization. -Today, many people use computers for music production not because they consciously leverage the uniqueness of the meta-medium, but simply because there are no quicker or more convenient alternatives available. Even so, within a musical culture where computers are used as a reluctant choice, musicians are inevitably influenced by the underlying infrastructures like software, protocols, and formats. As long as the history of programming languages for music remains intertwined with the history of computer music as it relates to specific genres or communities, it becomes difficult to analyze music created with computers as merely a passive means. +Today, many people use computers for music production not because they consciously leverage the uniqueness of the meta-medium, but simply because there are no quicker or more convenient alternatives available. Even so, within a musical culture where computers are used out of necessity rather than preference, musicians are inevitably influenced by the underlying infrastructures such as software, protocols, and formats. As long as the history of programming languages for music remains intertwined with the history of computer music as it relates to specific genres or communities, it will be difficult to analyze music created with computers as merely a passive means. -In this paper, the history of programming languages for music is reexamined with an approach that, in contrast to Lyon, adopts a radically style-agnostic perspective. Rather than focusing on what has been created with these tools, the emphasis is placed on how these tools themselves have been constructed. The paper centers on the following two topics: 1. A critique of the universality of sound representation using pulse-code modulation (PCM)—the foundational concept underlying most of today's sound programming, by referencing early attempts at sound generation using electronic computers. 2. An examination of the MUSIC-N family, the origin of PCM-based sound programming, to highlight that its design varies significantly across systems from the perspective of today's programming language design and that it has evolved over time into a black box, eliminating the need for users to understand its internal workings. +In this paper, the history of programming languages for music is reexamined with an approach that, unlike Lyon's, adopts a radically style-agnostic perspective. Rather than focusing on what has been created with these tools, the emphasis is placed on how these tools themselves have been constructed. The paper centers on the following two topics: 1. A critique of the universality of sound representation using pulse-code modulation (PCM)—the foundational concept underlying most of today's sound programming, by referencing early attempts at sound generation using electronic computers. 2. An examination of the MUSIC-N family, the origin of PCM-based sound programming, to highlight that its design varies significantly across systems from the perspective of today's programming language design and that it has evolved over time into a black box, eliminating the need for users to understand its internal workings. -Ultimately, the paper concludes that programming languages for music developed since the 2000s are not solely aimed at creating new music but also serve as alternatives to the often-invisible technological infrastructures surrounding music, such as formats and protocols. By doing so, the paper proposes new perspectives for the historical study of music created with computers. +Ultimately, the paper concludes that programming languages for music developed since the 2000s are not solely aimed at creating new music but also serve as alternatives to the often-invisible technological infrastructures surrounding music such as formats and protocols. Thus, the paper proposes new perspectives for the historical study of music created with computers. ## PCM and Early Computer Music @@ -36,33 +36,33 @@ The earliest experiments with sound generation on computers in the 1950s involve For instance, Louis Wilson, who was an engineer of the BINAC in the UK, noticed that an AM radio placed near the computer could pick up weak electromagnetic waves generated during the switching of vacuum tubes, producing sounds. He leveraged this phenomenon by connecting a speaker and a power amplifier to the computer's circuit to assist with debugging. Frances Elizabeth Holberton took this a step further by programming the computer to generate pulses at desired intervals, creating melodies in 1949[@woltman1990]. -Also, some computers at this time, such as the CSIR Mark I (CSIRAC) in Australia often had primitive "hoot" instructions that emit a single pulse to a speaker. Early sound generation using computers, including the BINAC and CSIR Mark I, primarily involved playing melodies of existing music. +Further, some computers at this time, such as the CSIR Mark I (CSIRAC) in Australia often had primitive "hoot" instructions that emitted a single pulse to a speaker. Early sound generation using computers, including the BINAC and CSIR Mark I, primarily involved playing melodies of existing music. -However, not all sound generation at this time was merely involved the reproduction of existing music. Doornbusch highlights experiments on the Pilot ACE (the Prototype for Automatic Computing Engine) in the UK, which utilized acoustic delay line memory to produce unique sounds[@doornbusch2017, pp.303-304]. Acoustic delay line memory, used as the main memory in early computers such as the BINAC and the CSIR Mark I, employed the feedback of pulses traveling through mercury via a speaker and microphone setup to retain data. Donald Davis, an engineer on the ACE project, described the sounds it produced as follows[@davis_very_1994, pp.19-20]: +However, not all sound generation at this time was merely the reproduction of existing music. Doornbusch highlights experiments on the Pilot ACE (the Prototype for Automatic Computing Engine) in the UK, which utilized acoustic delay line memory to produce unique sounds[@doornbusch2017, pp.303-304]. Acoustic delay line memory, used as the main memory in early computers, such as the BINAC and the CSIR Mark I, employed the feedback of pulses traveling through mercury via a speaker and microphone setup to retain data. Donald Davis, an engineer on the ACE project, described the sounds it produced as follows[@davis_very_1994, pp.19-20]: > The Ace Pilot Model and its successor, the Ace proper, were both capable of composing their own music and playing it on a little speaker built into the control desk. I say composing because no human had any intentional part in choosing the notes. The music was very interesting, though atonal, and began by playing rising arpeggios: these gradually became more complex and faster, like a developing fugue. They dissolved into colored noise as the complexity went beyond human understanding. -This music arose unintentionally during program optimization and was made possible by the "misuse" of switches installed for debugging delay line memory. Media scholar Miyazaki described the practice of listening to sounds generated by algorithms and their bit patterns, integrated into programming, as "Algo- *rhythmic* Listening"[@miyazaki2012]. +This music arose unintentionally during program optimization and was made possible by the "misuse" of switches installed for debugging delay line memory. Media scholar, Miyazaki, described the practice of listening to sounds generated by algorithms and their bit patterns, integrated into programming, as "Algo-*rhythmic* Listening"[@miyazaki2012]. -Doornbusch warns against ignoring these early computer music practices simply because they did not directly influence subsequent research[@doornbusch2017, p.305]. Indeed, the sounds produced by the Pilot ACE challenge the post-acousmatic historical narrative, which suggests that computer music transitioned from being democratized in closed electro-acoustic music laboratories to individual musicians. +Doornbusch warns against ignoring these early computer music practices simply because they did not directly influence subsequent research[@doornbusch2017, p.305]. Indeed, the sounds produced by the Pilot ACE challenge the post-acousmatic historical narrative, which suggests that computer music transitioned from being democratized in closed electro-acoustic music laboratories to being embraced by individual musicians. -This is because the sounds generated by the Pilot ACE were not created by musical experts, nor were they solely intended for debugging purposes. Instead, they were programmed with the goal of producing interesting sounds. Moreover, these sounds were tied to the hardware of the acoustic delay line memory—a feature that was likely difficult to replicate, even in today's sound programming environments. +This is because the sounds generated by the Pilot ACE were not created by musical experts, nor were they solely intended for debugging purposes. Instead, they were programmed with the goal of producing interesting sounds. Moreover, these sounds were tied to the hardware of the acoustic delay line memory—a feature that is likely difficult to replicate, even in today's sound programming environments. -Similarly, in the 1960s at MIT, Peter Samson took advantage of the debugging speaker on the TX-0, a machine that had become outdated and was freely available for students to use. He conducted experiments in which he played melodies, such as Bach fugues, using "hoot" instruction[@levy_hackers_2010]. Samson’s experiments with the TX-0 later evolved into the creation of a program that allowed melodies to be described using text within MIT. +Similarly, in the 1960s at the Massachusetts Institute of Technology (MIT), Peter Samson exploited the debugging speaker on the TX-0, a machine that had become outdated and was freely available for students to use. He conducted experiments in which he played melodies, such as Bach fugues, using "hoot" instruction[@levy_hackers_2010]. Building on this, Samson developed a program called the Harmony Compiler for the DEC PDP-1, which was derived from the TX-0. This program gained significant popularity among MIT students. Around 1972, Samson began surveying various digital synthesizers that were under development at the time and went on to create a system specialized for computer music. The resulting Samson Box was used at Stanford University's CCRMA (Center for Computer Research in Music and Acoustics) for over a decade until the early 1990s and became a tool for many composers to create their works [@loy_life_2013]. Considering his example, it is not appropriate to separate the early experiments in sound generation by computers from the history of computer music solely because their initial purpose was debugging. ### Acousmatic Listening, the premise of the Universality of PCM -One of the reasons why MUSIC led to subsequent advancements in research was not simply that it was developed early, but because it was the first to implement, but because it was the first to implement sound representation on a computer based on **pulse-code modulation (PCM)**, which theoretically can generate "almost any sound". +One of the reasons why MUSIC led to subsequent advancements in research was not simply that it was developed early, but because it was the first to implement sound representation on a computer based on PCM, which theoretically can generate "almost any sound". PCM, the foundational digital sound representation today, involves sampling audio waveforms at discrete intervals and quantizing the sound pressure at each interval as discrete numerical values. -The issue with the universalism of PCM in the history of computer music is inherent in the concept of Acousmatic Listening, which serves as a premise for Post-Acousmatic. Acousmatic, introduced by Piegnot as a listening style for tape music such as musique concrète and later theorized by Schaeffer[@adkins2016,p106], refers to a mode of listening in which the listener refrains from imagining a specific sound source. This concept has been widely applied in theories of listening to recorded sound, including Michel Chion’s analysis of sound design in film. +The problem with the universalism of PCM in the history of computer music is inherent in the concept of acousmatic listening, which serves as a premise for post-acousmatic. Acousmatic listening, introduced by Piegnot as a listening style for tape music, such as musique concrète, and later theorized by Schaeffer[@adkins2016,p106], refers to a mode of listening in which the listener refrains from imagining a specific sound source. This concept has been widely applied in theories of listening to recorded sound, including Michel Chion’s analysis of sound design in film. -However, as sound studies scholar Jonathan Sterne has pointed out, discourses surrounding acousmatic listening often work to delineate pre-recording auditory experiences as "natural" by contrast[^husserl]. This implies that prior to the advent of sound reproduction technologies, listening was unmediated and holistic—a narrative that obscures the constructed nature of these assumptions. +However, as sound studies scholar, Jonathan Sterne, has observed, discourses surrounding acousmatic listening often work to delineate pre-recording auditory experiences as "natural" by contrast[^husserl]. This implies that prior to the advent of sound reproduction technologies, listening was unmediated and holistic—a narrative that obscures the constructed nature of these assumptions. [^husserl]: Sterne later critiques the phenomenological basis of acousmatic listening, which presupposes an idealized, intact body as the listening subject. He proposes a methodology of political phenomenology centered on impairment, challenging these normative assumptions [@sterne_diminished_2022]. Discussions of universality in computer music should also address ableism, particularly in relation to recording technologies and auditory disabilities. @@ -74,11 +74,11 @@ The claim that PCM-based sound synthesis can produce "almost any sound" is under Incidentally, the actual implementation of PCM in MUSIC I only allowed for monophonic triangle waves with controllable volume, pitch, and timing[@Mathews1980]. Would anyone today describe such a system as capable of producing "almost any sound"? -Even when considering more contemporary applications, processes like ring modulation (RM), amplitude modulation (AM), or distortion often generate aliasing artifacts unless proper oversampling is applied. These artifacts occur because PCM, while universally suitable for reproducing recorded sound, is not inherently versatile as a medium for generating new sounds. As Puckette has argued, alternative representations, for instance, representation by a sequence of linear segments or physical modeling synthesis, offer other possibilities[@puckette2015]. Therefore, PCM is not a completely universal tool for creating sound. +Even when considering more contemporary applications, processes like ring modulation and amplitude modulation, or distortion often cause aliasing artifacts unless proper oversampling is applied. These artifacts occur because PCM, while universally suitable for reproducing recorded sound, is not inherently versatile as a medium for generating new sounds. As Puckette argues, alternative representations, for instance, representation by a sequence of linear segments or physical modeling synthesis, offer other possibilities[@puckette2015]. Therefore, PCM is not a completely universal tool for creating sound. ## What Does the Unit Generator Hide? -Beginning with version III, MUSIC took the form of a block diagram compiler that processes two input sources: a score language, which represents a list of time-varying parameters, and an orchestra language, which describes the connections between **Unit Generators** such as oscillators and filters. In this paper, the term "Unit Generator"refers to a signal processing module whose implementation is either not open or written in a language different from the one used by the user. +Beginning with Version III, MUSIC took the form of a block diagram compiler that processes two input sources: a score language, which represents a list of time-varying parameters, and an orchestra language, which describes the connections between **unit generator (UGen)** such as oscillators and filters. In this paper, the term "UGen" refers to a signal processing module whose implementation is either not open or written in a language different from the one used by the user. The MUSIC family, in the context of computer music research, achieved success for performing sound synthesis based on PCM but this success came with the establishment of a division of labor between professional musicians and computer engineers through the development of domain-specific languages. Mathews explained that he developed a compiler for MUSIC III in response to requests from many composers for additional features in MUSIC II, such as envelopes and vibrato, while also ensuring that the program would not be restricted to a specialized form of musical expression[@mathews_max_2007,13:10-17:50]. He repeatedly stated that his role was that of a scientist rather than a musician: @@ -86,13 +86,13 @@ The MUSIC family, in the context of computer music research, achieved success fo > When we first made these music programs the original users were not composers; they were the psychologist Guttman, John Pierce, and myself, who are fundamentally scientists. We wanted to have musicians try the system to see if they could learn the language and express themselves with it. So we looked for adventurous musicians and composers who were willing to experiment.[@Mathews1980, p17] -This clear delineation of roles between musicians and scientists became one of the defining characteristics of post-MUSIC computer music research. Paradoxically, while computer music research aimed to create sounds never heard before, it also paved the way for further research by allowing musicians to focus on composition without having to understand the cumbersome work of programming. +This clear delineation of roles between musicians and scientists became one of the defining characteristics of post-MUSIC computer music research. Paradoxically, although computer music research aimed to create sounds never heard before, it also paved the way for further research by allowing musicians to focus on composition without having to understand the cumbersome work of programming. ### Example: Hiding Internal State Variables in Signal Processing Although the MUSIC N series shares a common workflow of using a score language and an orchestra language, the actual implementation of each programming language varies significantly, even within the series. -One notable but often overlooked example is MUSIGOL, a derivative of MUSIC IV [@innis_sound_1968]. In MUSIGOL, not only was the system itself but even the score and orchestra defined by user were written entirely as ALGOL 60 language. Similar to today's Processing or Arduino, MUSIGOL is one of the earliest internal DSL (Domain-specific languages) for music, which means implemented as an library[^mus10]. (Therefore, according to the definition of Unit Generator provided in this paper, MUSIGOL does not qualify as a language that uses Unit Generators.) +One notable but often overlooked example is MUSIGOL, a derivative of MUSIC IV [@innis_sound_1968]. In MUSIGOL, the system, the score and orchestra defined by user were written entirely as ALGOL 60 language. Similar to today's Processing or Arduino, MUSIGOL is one of the earliest internal domain-specific languages (DSL) for music; thus, it is implemented as an library[^mus10]. (According to the definition in this paper, MUSIGOL does not qualify as a language that uses UGen.) [^mus10]: While MUS10, used at Stanford University, was not an internal DSL, it was created by modifying an existing ALGOL parser [@loy1985, p.248]. @@ -100,17 +100,17 @@ The level of abstraction deemed intuitive for musicians varied across different $$O_n = I_1 \cdot S_n + I_2 \cdot O_{n-1} - I_3 \cdot O_{n-2}$$ -In MUSIC V, this band-pass filter can be used as shown in Listing \ref{lst:musicv} [@mathews_technology_1969, p.78]. Here, `I1` represents the input bus, and `O` is the output bus. The parameters `I2` and `I3` correspond to the normalized values of the coefficients $I_2$ and $I_3$, divided by $I_1$ (as a result, the overall gain of the filter can be greater or less than 1). The parameters `Pi` and `Pj` are normally used to receive parameters from the Score, specifically among the available `P0` to `P30`. In this case, however, these parameters are repurposed as general-purpose memory to temporarily store feedback signals. Similarly, other Unit Generators, such as oscillators, reuse note parameters to handle operations like phase accumulation. As a result, users needed to manually calculate feedback gains based on the desired frequency characteristics[^musicv], and they also had to account for at least two sample memory spaces. +In MUSIC V, this band-pass filter can be used as shown in Listing \ref{lst:musicv} [@mathews_technology_1969, p.78]. Here, `I1` represents the input bus, and `O` is the output bus. The parameters `I2` and `I3` correspond to the normalized values of the coefficients $I_2$ and $I_3$, divided by $I_1$ (as a result, the overall gain of the filter can be greater or less than 1). The parameters `Pi` and `Pj` are normally used to receive parameters from the score, specifically among the available `P0` to `P30`. In this case, however, these parameters are repurposed as general-purpose memory to temporarily store feedback signals. Similarly, other UGens, such as oscillators, reuse note parameters to handle operations like phase accumulation. As a result, users needed to manually calculate feedback gains based on the desired frequency characteristics[^musicv], and they also had to considder at least two sample memory spaces. [^musicv]: It is said that a preprocessing feature called `CONVT` could be used to transform frequency characteristics into coefficients [@mathews_technology_1969, p77]. -On the other hand, in later MUSIC 11, and its successor Csound by Barry Vercoe, the band-pass filter is defined as a Unit Generator (UGen) named `reson`. This UGen takes four parameters: the input signal, center cutoff frequency, bandwidth, and Q factor[@vercoe_computer_1983, p248]. Unlike previous implementations, users no longer need to calculate coefficients manually, nor do they need to be aware of the two-sample memory space. However, in MUSIC 11 and Csound, it is possible to implement this band-pass filter from scratch as a User-Defined Opcode (UDO) as shownin Listing \ref{lst:reson}. Vercoe emphasized that while signal processing primitives should allow for low-level operations, such as single-sample feedback, and eliminate black boxes, it is equally important to provide high-level modules that avoid unnecessary complexity ("avoid the clutter") when users do not need to understand the internal details [@vercoe_computer_1983, p.247]. +On the other hand, in newer MUSIC 11, and its successor, Csound, by Barry Vercoe, the band-pass filter is defined as a UGen named `reson`. This UGen takes four parameters: the input signal, center cutoff frequency, bandwidth, and Q factor[@vercoe_computer_1983, p248]. Unlike previous implementations, users no longer need to calculate coefficients manually, nor do they need to be aware of the two-sample memory space. However, in MUSIC 11 and Csound, it is possible to implement this band-pass filter from scratch as a user-defined opcode (UDO) as shown in Listing \ref{lst:reson}. Vercoe emphasized that while signal processing primitives should allow for low-level operations, such as single-sample feedback, and eliminate black boxes, it is equally important to provide high-level modules that avoid unnecessary complexity ("avoid the clutter") when users do not need to understand the internal details [@vercoe_computer_1983, p.247]. ~~~{#lst:musicv caption="Example of the use of FLT UGen in MUSIC V."} FLT I1 O I2 I3 Pi Pj; ~~~ -~~~{#lst:reson caption="Example of scratch implementation and built-in operation of RESON UGen respectively, in MUSIC11. Retrieved from the original paper. (Comments are omitted for the space restriction.)"} +~~~{#lst:reson caption="Example of scratch implementation and built-in operation of RESON UGen respectively, in MUSIC11. Retrieved from the original paper. (Comments are omitted owing to space restriction.)"} instr 1 la1 init 0 la2 init 0 @@ -130,13 +130,13 @@ a1 reson a1,p5,p6,1 endin ~~~ -On the other hand, in succeeding environments that inherit the Unit Generator paradigm, such as Pure Data [@puckette_pure_1997], Max (whose signal processing functionalities were ported from Pure Data as MSP), SuperCollider [@mccartney_supercollider_1996], and ChucK [@wang_chuck_2015], primitive UGens are implemented in general-purpose languages like C or C++[^chugen]. If users wish to define low-level UGens (called external objects in Max and Pd), they need to set up a development environment for C or C++. +On the other hand, in succeeding environments that inherit the UGen paradigm, such as Pure Data [@puckette_pure_1997], Max (whose signal processing functionalities were ported from Pure Data as MSP), SuperCollider [@mccartney_supercollider_1996], and ChucK [@wang_chuck_2015], primitive UGens are implemented in general-purpose languages such as C or C++[^chugen]. If users wish to define low-level UGens (called external objects in Max and Pd), they need to set up a development environment for C or C++. [^chugen]: ChucK later introduced ChuGen, which is similar extension to Csound’s UDO, allowing users to define UGens within the ChucK language itself [@Salazar2012]. However, not all existing UGens are replaced by UDOs by default both in Csound and ChucK, which remain supplemental features possibly because the runtime performance of UDO is inferior to natively implemented UGens. -When UGens are implemented in low-level languages like C, even if the implementation is open-source, the division of knowledge effectively forces users (composers) to treat UGens as black boxes. This reliance on UGens as black boxes reflects and deepens the division of labor between musicians and scientists that was established in MUSIC though it can be interpreted as both a cause and a result. +When UGens are implemented in low-level languages like C, even if the implementation is open-source, the division of knowledge effectively forces users (composers) to treat UGens as black boxes. This reliance on UGens as black boxes reflects and deepens the division of labor between musicians and scientists that was established in MUSIC, though it can be interpreted as both a cause and a result. -For example, Puckette, the developer of Max and Pure Data, noted that the division of labor at IRCAM between Researchers, Musical Assistants(Realizers), and Composers has parallels in the current Max ecosystem, where roles are divided among Max developers themselves, developers of external objects, and Max users [@puckette_47_2020]. As described in the ethnography of 1980s IRCAM by anthropologist Georgina Born, the division of labor between fundamental research scientists and composers at IRCAM was extremely clear. This structure was also tied to the exclusion of popular music and its associated technologies from IRCAM’s research focus [@Born1995]. +For example, Puckette, the developer of Max and Pure Data, notes that the division of labor at IRCAM between researchers, musical assistants (realizers), and composers has parallels in the current Max ecosystem, where roles are divided among Max developers themselves, developers of external objects, and Max users [@puckette_47_2020]. As described in the ethnography of 1980s IRCAM by anthropologist Georgina Born, the division of labor between fundamental research scientists and composers at IRCAM was extremely clear. This structure was also tied to the exclusion of popular music and its associated technologies from IRCAM’s research focus [@Born1995]. However, such divisions are not necessarily the result of differences in values along the axes analyzed by Born, such as modernist/postmodernist/populist or low-tech/high-tech distinctions[^wessel]. This is because the black-boxing of technology through the division of knowledge occurs in popular music as well. Paul Théberge pointed out that the "democratization" of synthesizers in the 1980s was achieved through the concealment of technology, which transformed musicians as creators into consumers. @@ -144,47 +144,47 @@ However, such divisions are not necessarily the result of differences in values > Lacking adequate knowledge of the technical system, musicians increasingly found themselves drawn to prefabricated programs as a source of new sound material. (...)it also suggests a reconceptualization on the part of the industry of the musician as a particular type of consumer. [@theberge_any_1997, p.89] -This argument can be extended beyond electronic music to encompass computer-based music in general. For example, media researcher Lori Emerson noted that while the proliferation of personal computers began with the vision of a "metamedium"—tools that users could modify themselves, as exemplified by Xerox PARC's Dynabook—the vision was ultimately realized in an incomplete form through devices like the Macintosh and iPad, which distanced users from programming by black-boxing functionality [@emerson2014]. In fact, Alan Kay, the architect behind the Dynabook concept, remarked that while the iPad's appearance may resemble the ideal he originally envisioned, its lack of extensibility through programming renders it merely a device for media consumption [@kay2019]. +This argument can be extended beyond electronic music to encompass computer-based music in general. For example, media researcher Lori Emerson noted that although the proliferation of personal computers began with the vision of a "metamedium"—tools that users could modify themselves, as exemplified by Xerox PARC's Dynabook—the vision was ultimately realized in an incomplete form through devices such as the Macintosh and iPad, which distanced users from programming by black-boxing functionality [@emerson2014]. In fact, Alan Kay, the architect behind the Dynabook concept, remarked that while the iPad's appearance may resemble the ideal he originally envisioned, its lack of extensibility through programming rendered it merely a device for media consumption [@kay2019]. -Musicians have attempted to resist the consumeristic use of those tools through appropriation and exploitation [@kelly_cracked_2009]. However, just as circuit bending has been narrowed down to its potential by a literal black box - one big closed IC of aggregated functions [@inglizian_beyond_2020,p225], and glitching has been recovered from methodology to a superficial auditory style [@casconeErrormancyGlitchDivination2011], capitalism-based technology expands in a direction that does not permit users to misuse. Under these circumstances, designing a new programming language does not merely provide musicians with the means to create new music, but is itself contextualized as a musicking practice following hacking, an active reconstruction of the technological infrastructure that is allowed to be hacked. +Musicians have attempted to resist the consumeristic use of those tools through appropriation and exploitation [@kelly_cracked_2009]. However, just as circuit bending has been narrowed down to its potential by a literal black box - one big closed IC of aggregated functions [@inglizian_beyond_2020,p225], and glitching has shifted from methodology to a superficial auditory style [@casconeErrormancyGlitchDivination2011], capitalism-based technology expands in a direction that prevents users from misusing it. Under these circumstances, designing a new programming language does not merely provide musicians with the means to create new music, but is itself contextualized as a musicking practice following hacking, an active reconstruction of the technological infrastructure that is allowed to be hacked. ## Context of Programming Languages for Music After 2000 Under this premise, music programming languages developed after the 2000s can be categorized into two distinct directions: those that narrow the scope of the language's role by introducing alternative abstractions at a higher-level, distinct from the UGen paradigm, and those that expand the general-purpose capabilities of the language, reducing black-boxing. -Languages that pursued alternative higher-level abstractions have evolved alongside the culture of live coding, where performances are conducted by rewriting code in real time. The activities of the live coding community, including groups such as TOPLAP since the 2000s, were not only about turning coding itself into a performance but also served as a resistance against laptop performances that relied on black-boxed music software. This is evident in the community's manifesto, which states, "Obscurantism is dangerous" [@toplap_manifestodraft_2004]. +Languages that pursued alternative higher-level abstractions have evolved alongside the culture of live coding, where performances are conducted by rewriting code in real time. The activities of the live coding community, including groups, such as TOPLAP, since the 2000s, were not only about turning coding itself into a performance but also served as a resistance against laptop performances that relied on black-boxed music software. This is evident in the community's manifesto, which states, "Obscurantism is dangerous" [@toplap_manifestodraft_2004]. Languages implemented as clients for SuperCollider, such as **IXI** (on Ruby) [@Magnusson2011], **Sonic Pi** (on Ruby), **Overtone** (on Clojure) [@Aaron2013], **TidalCycles** (on Haskell) [@McLean2014], and **FoxDot** (on Python) [@kirkbride2016foxdot], leverage the expressive power of more general-purpose programming languages. While embracing the UGen paradigm, they enable high-level abstractions for previously difficult-to-express elements like note values and rhythm. For example, the abstraction of patterns in TidalCycles is not limited to music but can also be applied to visual patterns and other outputs, meaning it is not inherently tied to PCM-based waveform output as the final result. -On the other hand, due to their high-level design, these languages often rely on ad-hoc implementations for tasks like sound manipulation and low-level signal processing, such as effects. McCartney, the developer of SuperCollider, stated that if general-purpose programming languages were sufficiently expressive, there would be no need to create specialized languages [@McCartney2002]. This prediction appears reasonable when considering examples like MUSIGOL. However, in practice, scripting languages that excel in dynamic program modification face challenges in modern preemptive OS environments. For instance, dynamic memory management techniques such as garbage collection can hinder deterministic execution timing required for real-time processing [@Dannenberg2005]. +On the other hand, owing to their high-level design, these languages often rely on ad-hoc implementations for tasks like sound manipulation and low-level signal processing, such as effects. McCartney, the developer of SuperCollider, stated that if general-purpose programming languages were sufficiently expressive, there would be no need to create specialized languages [@McCartney2002], which appears reasonable when considering examples like MUSIGOL. However, in practice, scripting languages that excel in dynamic program modification face challenges in modern preemptive operating system (OS) environments. For instance, dynamic memory management techniques such as garbage collection can hinder deterministic execution timing required for real-time processing [@Dannenberg2005]. -Historically, programming languages like FORTRAN or C served as a portable way for implementing programs across different architectures. However, with the proliferation of higher-level languages, programming in C or C++ has become relatively more difficult, akin to assembly language in earlier times. Furthermore, considering the challenges of portability not only across different CPUs but also diverse host environments such as OSs and the Web, these languages are no longer as portable as they once were. Consequently, internal DSL for music including signal processing have become exceedingly rare, with only a few examples such as LuaAV[@wakefield2010]. +Historically, programming languages, such as FORTRAN or C, served as a portable way for implementing programs across different architectures. However, with the proliferation of higher-level languages, programming in C or C++ has become relatively more difficult, akin to assembly language in earlier times. Furthermore, considering the challenges of portability not only across different CPUs but also diverse host environments such as OSs and the Web, these languages are no longer as portable as they once were. Consequently, internal DSL for music, including signal processing, have become exceedingly rare, with only a few examples such as LuaAV[@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 **Extempore**, a live programming environment developed by Sorensen [@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 [@Lattner] to just-in-time (JIT) compile signal processing code, including sound manipulation, into machine code for high-speed execution. +Instead, an approach has emerged to create general-purpose languages specifically designed for use in music from the ground up. One prominent example is **Extempore**, a live programming environment developed by Sorensen [@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 compiler infrastructure, LLVM[@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 has given rise to an approach focused on designing languages with mathematical formalization that reduces black-boxing. **Faust** [@Orlarey2009], for instance, is a language that retains a graph-based structure akin to UGens but is built on a formal system called Block Diagram Algebra. Thanks to its formalization, Faust can be transpiled into various low-level languages such as C, C++, or Rust and can also be used as external objects in Max or Pure Data. +The expressive power of general-purpose languages and compiler infrastructures, such as LLVM, has given rise to an approach focused on designing languages with mathematical formalization that reduces black-boxing. **Faust** [@Orlarey2009], for instance, is a language that retains a graph-based structure akin to UGens but is built on a formal system called Block Diagram Algebra. Thanks to its formalization, Faust can be transpiled into various low-level languages, such as C, C++, or Rust, and can also be used as external objects in Max or Pure Data. Languages like **Kronos** [@norilo2015] and **mimium** [@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 [@Norilo2016] and balancing self-contained semantics with interoperability with other general-purpose languages [@matsuura_lambda-mmm_2024]. -DSLs are constructed within a double bind: they aim to specialize in a particular purpose while still providing a certain degree of expressive freedom through coding. In this context, efforts like Extempore, Kronos, and mimium are not merely programming languages for music but are also situated within the broader research context of functional reactive programming (FRP), which focuses on representing time-varying values in computation. Most computing models lack an inherent concept of real-time and instead operates based on discrete computational steps. Similarly, low-level general-purpose programming languages do not natively include primitives for real-time concepts. Consequently, the exploration of computational models tied to time —a domain inseparable from music— remains vital and has the potential to contribute to the theoretical foundations of general-purpose programming languages. +DSLs are constructed within a double bind; they aim to specialize in a particular purpose while still providing a certain degree of expressive freedom through coding. In this context, efforts like Extempore, Kronos, and mimium are not merely programming languages for music but are also situated within the broader research context of functional reactive programming, which focuses on representing time-varying values in computation. Most computing models lack an inherent concept of real-time, operating instead based on discrete computational steps. Similarly, low-level general-purpose programming languages do not natively include primitives for real-time concepts. Consequently, the exploration of computational models tied to time —a domain inseparable from music— remains vital and has the potential to contribute to the theoretical foundations of general-purpose programming languages. -However, strongly formalized languages come with another trade-off. While they allow UGens to be defined without black-boxing, understanding the design and implementation of these languages often requires expert knowledge. This can create a deeper division between language developers and users, in contrast to the many but small and shallow divisions seen in the multi-language paradigm, like SuperCollider developers, external UGen developers, client language developers (e.g., TidalCycles), SuperCollider users, and client language users. +However, strongly formalized languages come with another trade-off. Although they allow UGens to be defined without black-boxing, understanding the design and implementation of these languages often requires expert knowledge. This can create a deeper division between language developers and users, in contrast to the many but small and shallow divisions seen in the multi-language paradigm, such as SuperCollider developers, external UGen developers, client language developers (e.g., TidalCycles), SuperCollider users, and client language users. -Although there is no clear solution to this trade-off, one intriguing idea is the development of self-hosting languages for music—that is, languages whose their own compilers are written in the language itself. At first glance, this may seem impractical. However, by enabling users to learn and modify the language's mechanisms spontaneously, this approach could create an environment that fosters deeper engagement and understanding among users. +Although there is no clear solution to this trade-off, one intriguing idea is the development of self-hosting languages for music—that is, languages whose compilers are written in the language itself. At first glance, this may seem impractical. However, by enabling users to learn and modify the language's mechanisms spontaneously, this approach could create an environment that fosters deeper engagement and understanding among users. ## Conclusion -This paper has reexamined the history of computer music and music programming languages with a focus on the universalism of PCM and the black-boxing tendencies of the Unit Generator paradigm. Historically, it was expected that the clear division of roles between engineers and composers would enable the creation of new forms of expression using computers. Indeed, from the perspective of Post-Acousmatic discourse, some, such as Holbrook and Rudi, still consider this division to be a positive development: +This paper has reexamined the history of computer music and music programming languages with a focus on the universalism of PCM and the black-boxing tendencies of the UGen paradigm. Historically, it was expected that the clear division of roles between engineers and composers would enable the creation of new forms of expression using computers. Indeed, from the perspective of post-acousmatic discourse, some scholars, such as Holbrook and Rudi, still consider this division to be a positive development: > Most newer tools abstract the signal processing routines and variables, making them easier to use while removing the need for understanding the underlying processes in order to create meaningful results. Composers no longer necessarily need mathematical and programming skills to use the technologies.[@holbrook2022, p2] -However, this division of labor also creates a shared vocabulary (as exemplified in the Unit Generator by Mathews) and serves to perpetuate it. By portraying new technologies as something externally introduced, and by focusing on the agency of those who create music with computers, the individuals responsible for building programming environments, software, protocols, and formats are rendered invisible [@sterne_there_2014]. This leads to an oversight of the indirect power relationships produced by these infrastructures. +However, this division of labor also creates a shared vocabulary (as exemplified in the UGen by Mathews) and serves to perpetuate it. By portraying new technologies as something externally introduced, and by focusing on the agency of those who create music with computers, the individuals responsible for building programming environments, software, protocols, and formats are rendered invisible [@sterne_there_2014]. This leads to an oversight of the indirect power relationships produced by these infrastructures. For this reason, future research on programming languages for music must address how the tools, including the languages themselves, contribute aesthetic value within musical culture (and what forms of musical practice they enable), as well as the social (im)balances of power they produce. -The academic value of the research on programming languages for music is often vaguely asserted, using terms such as "general", "expressive", and "efficient". However, it is difficult to argue these claims when processing speed is no longer the primary concern. Thus, as with Idiomaticity [@McPherson2020] by McPherson et al., we need to develop and share a vocabulary for understanding the value judgments we make about music languages. +The academic value of the research on programming languages for music is often vaguely asserted, using terms such as "general," "expressive," and "efficient." However, it is difficult to argue these claims when processing speed is no longer the primary concern. Thus, as with idiomaticity [@McPherson2020] by McPherson et al., we need to develop and share a vocabulary for understanding the value judgments we make about music languages. -In a broader sense, the development of programming languages for music has also expanded to the individual level. Examples include **Gwion** by Astor, which is inspired by ChucK and enhances its abstraction, such as lambda functions [@astor_gwion_2017]; **Vult**, a DSP transpiler language created by Ruiz for his modular synthesizer hardware [@Ruiz2020]; and a UGen-based live coding environment designed for web, **Glicol** [@lan_glicol_2020]. However, these efforts have not yet been incorporate into academic discourse. +In a broader sense, the development of programming languages for music has also expanded to the individual level. Examples include **Gwion** by Astor, which is inspired by ChucK and enhances its abstraction through features, such as lambda functions [@astor_gwion_2017]; **Vult**, a DSP transpiler language created by Ruiz for his modular synthesizer hardware [@Ruiz2020]; and a UGen-based live coding environment designed for web, **Glicol** [@lan_glicol_2020]. However, these efforts have not yet been incorporated into academic discourse. -Conversely, practical knowledge of past languages in 1960s as well as real-time hardware-oriented systems from the 1980s, is gradually being lost. While research efforts such as *Inside Computer Music*, which analyzes historical works of computer music, have begun [@clarke_inside_2020], an archaeological practice focused on the construction of computer music systems themselves will also be necessary. +Conversely, practical knowledge of past languages in 1960s, as well as real-time hardware-oriented systems from the 1980s, is gradually being lost. Although research efforts such as *Inside Computer Music*, which analyzes historical works of computer music, have begun [@clarke_inside_2020], an archaeological practice focused on the construction of computer music systems themselves will also be necessary. diff --git a/main.pdf b/main.pdf index dca1e8e4fd4c871c771b035d8938dc3240ba02f7..aa5b6918bacc0b4b4b1c66431ddd71372f8b3d6d 100644 GIT binary patch delta 68165 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�|vN9y5aj#g6$r1Cg( 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 XGGu3G(Sz9Fif}ONl`A@TbXori9kN6p diff --git a/main.tex b/main.tex index bcbf33a..deed2cb 100644 --- a/main.tex +++ b/main.tex @@ -32,7 +32,7 @@ % ================ Define title and author names here =============== % ==================================================== %user defined variables -\def\papertitle{Hiding What to Who? : A Critical Review of the History in Programming languages for Music} +\def\papertitle{Hiding What from Whom? A Critical Review of the History of Programming languages for Music} \def\firstauthor{Tomoya Matsuura} % \def\firstauthor{Anonymized for review} diff --git a/sed.js b/sed.js new file mode 100644 index 0000000..ca4ff1b --- /dev/null +++ b/sed.js @@ -0,0 +1,23 @@ +const fs = require("fs"); + +const src = fs.readFileSync("content_pre.tex").toString(); + +src.replace(`\\begin{verbatim} + instr 1 ; instrument with fabricated reson: +la1 init 0 ; clear feedbacks +la2 init 0 ; at start only +i3 = exp(-6.28 * p6 / 10000) ; set coef 3 +i2 = 4*i3*cos(6.283185 * p5/10000) / (1+i3); set coef 2 +i1 = (1-i3) * sqrt(1-1 - i2*i2/(4*i3)) ; set coef 1 +a1 rand p4 ; source signal +la3 = la2 ; feedback 2 +la2 = la1 ; feedback 1 +la1 = i1*a1 + i2 * la2 - i3 * la3 ; 2nd order difference eqn + out la1 + endin + + instr 2 ; this instr does same as above +a1 rand p4 ; source signal +a1 reson a1,p5,p6,1 ; 2nd order recursicve filter + endin +\\end{verbatim}`,``) \ No newline at end of file