<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>RingBuffer (Posts about basics:languages)</title><link>http://ringbuffer.org/</link><description></description><atom:link href="http://ringbuffer.org/categories/cat_basicslanguages.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><lastBuildDate>Mon, 02 Mar 2026 17:58:40 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Faust</title><link>http://ringbuffer.org/computer_music_basics/Languages/faust/</link><dc:creator>Henrik von Coler</dc:creator><description>&lt;p&gt;&lt;a class="reference external" href="https://faust.grame.fr/"&gt;Faust&lt;/a&gt; is a functional audio programming
language, developed at GRAME, Lyon. It is a community-driven,
free open source project.
Faust is specifically suited for quickly designing
musical synthesis and processing software and
compiling it for a large variety of targets.
The fastest way for getting started with Faust
in the &lt;a class="reference external" href="https://faustide.grame.fr/"&gt;Faust online IDE&lt;/a&gt; which allows programming
and testing code in the browser, without any installation.
The online materials for the class &lt;a class="reference external" href="http://ringbuffer.org/teaching/building-instruments-in-faust/"&gt;Sound Synthesis- Building Instruments with Faust&lt;/a&gt; introduce the basics of the Faust language and give examples for different synthesis techniques.&lt;/p&gt;
&lt;section id="faust-and-web-audio"&gt;
&lt;h2&gt;Faust and Web Audio&lt;/h2&gt;
&lt;p&gt;Besides many targets, Faust can also be used to create ScriptProcessor nodes (Letz, 2015).&lt;/p&gt;
&lt;/section&gt;
&lt;section id="references"&gt;
&lt;h2&gt;References&lt;/h2&gt;
&lt;div class="publication-list"&gt;
&lt;h4&gt;2015&lt;/h4&gt;
&lt;ul&gt;&lt;li class="publication" style="padding-bottom: 1em;"&gt;Stephane Letz, Sarah Denoux, Yann Orlarey, and Dominique Fober.
&lt;a href="http://ringbuffer.org/papers/letz2015faust.html"&gt;&lt;strong&gt;Faust audio dsp language in the web.&lt;/strong&gt;&lt;/a&gt;
In &lt;em&gt;Proceedings of the Linux Audio Conference&lt;/em&gt;. 2015.&lt;br&gt;[&lt;a href="http://ringbuffer.org/papers/letz2015faust.html"&gt;details&lt;/a&gt;] 
            [&lt;a href="javascript:void(0)" onclick="
            (function(target, id) {
              if ($('#' + $.escapeSelector(id)).css('display') == 'block')
              {
                $('#' + $.escapeSelector(id)).hide('fast');
                $(target).text('BibTeX▼')
              }
              else
              {
                $('#' + $.escapeSelector(id)).show('fast');
                $(target).text('BibTeX▲')
              }
            })(this, 'bibtex-letz2015faust');"&gt;BibTeX▼&lt;/a&gt;]
            &lt;div id="bibtex-letz2015faust" style="display:none"&gt;&lt;pre&gt;@inproceedings{letz2015faust,
    author = "Letz, Stephane and Denoux, Sarah and Orlarey, Yann and Fober, Dominique",
    title = "Faust audio DSP language in the Web",
    booktitle = "Proceedings of the Linux Audio Conference",
    year = "2015",
    location = "Mainz, Germany"
}
&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/section&gt;</description><guid>http://ringbuffer.org/computer_music_basics/Languages/faust/</guid><pubDate>Thu, 05 Nov 2020 14:01:15 GMT</pubDate></item><item><title>Audio Programming in C++</title><link>http://ringbuffer.org/computer_music_basics/Languages/audio-programming-in-c%2B%2B/</link><dc:creator>Henrik von Coler</dc:creator><description>&lt;p&gt;C++ is the standard for programming professional,
efficient audio software. Most of the languages and environments introduced in
the &lt;em&gt;Computer Music Basics&lt;/em&gt; class are programmed in C++ themselves.
When adding low level components, such as UGens in SuperCollider,
objects in Pure Data or VST plugins for Digital Audio Workstations (DAW),
these are programmed in C++, based on the respective API.
These APIs take over the communication with the hardware and offer convenient
features for control and communication.&lt;/p&gt;
&lt;section id="juce"&gt;
&lt;h2&gt;JUCE&lt;/h2&gt;
&lt;p&gt;JUCE is the most widely used framework for developing commercial audio software,
such as VST plugins and standalone applications.&lt;/p&gt;
&lt;/section&gt;
&lt;section id="jack"&gt;
&lt;h2&gt;JACK&lt;/h2&gt;
&lt;p&gt;JACK offers a simple API for developing audio software on Linux, Mac and Windows systems.&lt;/p&gt;
&lt;/section&gt;</description><guid>http://ringbuffer.org/computer_music_basics/Languages/audio-programming-in-c%2B%2B/</guid><pubDate>Thu, 05 Nov 2020 14:01:15 GMT</pubDate></item></channel></rss>