A lot of interesting responses, glad to see this list is buzzing! I'm a fairly new user of Faust, having finished the Kadenze course and and I'm starting to realise it's the next tool I'd like to dedicate some major time to learning.
In my own work I mostly use SuperCollider for sound, plus a variety of other environments to do anything non-audio (TouchDesigner, openFrameworks). What I've wanted for a while is a tool like SuperCollider/Csound, but that could compile to a variety of formats and platforms. Recently I have less use for SC's live coding capabilities so a compiled language like Faust fits the bill well. >From my perspective, a few things would make this process of transition easier: 1. More high level libraries, more high level everything! The ability to just plug together various preexisting modules using the : operator is the level I would usually work on, with occasional forays into low level DSP. 2. I think Dario mentioned more composition tools - it would be great to have some way to think in musical patterns in Faust without deferring to DAWs etc. 3. an FFT library would top it all off :) Anyway just thought I'd add some food for thought - looking very much forward to these upcoming workshops, and thank you for all the hard work on Faust - it's an amazing tool and I'm very much looking forward to seeing its future! Jeremy On Tue, Jun 2, 2020 at 3:38 PM 知也松浦 <matsuura.nonym...@gmail.com> wrote: > Dear all > > Interesting thread, here mixed comment to initial questions and topics > appeared in this thread from who have used faust for 5 years or more, and > recently started to develop a new language( > https://github.com/mimium-org/mimium) as a part of my PhD project which > is, of course, deeply inspired from faust. > > The first thing I want to mention is "How to think in faust manner?" > > I feel there are 3 steps to get used to write algorithm in faust. > > - one can read and understand how existing faust code works. > it can be learn by reading tutorial, libraries and references(even though > it is much harder than in other languages) > - one can convert existing algorithms written in other language(e.g. C++) > into faust code. > especially understanding that storing output value into temporal value can > be translated into a recursive composition is a difficult part. > - one can write a complex algorithm which cannot be written easily in > other languages. > typical example I think is an inter-feedback with nonlinearity as Dario > showed examples. Also this level needs other domain-specific knowledge such > as how to keep a system stability. > > As I also have performed with an abstract feedback system made with faust > (one is hosted on faustgen~ in Max and another is a full-scratch dsp > live-coding on FaucK in ChucK), I think there is much more unseen sounds > which cannot be realized easily with the other languages. > However, I felt difficulty to tell this possibility when I hosted a faust > workshop in Japan a few years ago. Telling as a just "useful efficient > tools to create dsp code” is not hard but beyond it, was hard. > > Also, when writing faust code, it is hard to find the best code from many > equivalent codes, like > process = hoge + fuga; > process = (hoge,fuga): + ; > process = (hoge,fuga):> _; > > Which code should be chosen are depends on situation to keep > readability, maintainability and DRY manner. > > Maybe it would be nice to discuss on a reference/standard design pattern > to "go beyond examples”. > > Finally, as a beginner of language developer, recently I am interested in > how to grow up a sound language community(both of users and developers), > and connect between communities of each languages. > There are many approaches like company-based(Max), academic based(faust > and many), solo-play(pd) and community-based(SuperCollider’s RFC ecosystem > is amazing), and pros & cons exist in each ways. > I am curious about long-range view, how faust is going to be like in next > 10 years! > > Thank you for reading my messy comment! > > 松浦知也 Tomoya Matsuura > +818035934157 > m...@matsuuratomoya.com > matsuura.nonym...@gmail.com > https://matsuuratomoya.com > > > On Jun 2, 2020, at 21:54, Till Bovermann <lf...@lfsaw.de> wrote: > > Dear list, > > > > > I am a long-time lurker here and even have occasionally written one or > another post here. As a long-time user/developer in/of SuperCollider, I am > on and off glancing at faust but currently I am very much serious in giving > it a more thorough listen. > > > And, since you asked for them, here are my comments/impressions of the > faust ecology so far. Please do not take them too serious, they are, after > all, only based on my (very limited and highly subjective) experience of > the faust ecosystem. > > > > ## high- vs. low-level programming and "common practice" in faust > development > > I'd like to support others in this thread (Dario, Sam, Gary), in their > comments that music-oriented tutorials/example material would be very > beneficial for people to better understand and use faust. > I am particularly with Gary when it comes to the available material; many > of the examples are either very basic (how to use a phasor, create a sine > wave, implement a pole-filter), whereas other existing projects and > tutorials (e.g. the "demo" tutorials) are already quite sophisticated and > for me hard to understand. > Those examples are also difficult to integrate into my own code, since > they often bring their own GUI elements; I'd rather have them expose their > parameters and take care of gui-related elements myself. > > > From SuperCollider development, I am used to deal with three levels: > > + low-level implementation of "unit generators" (C/C++) > + assembly of synthesis engines ("SynthDef") from these components in an > imperative language, i.e. assembling pre-built blocks > + high-level control of these synthesis elements in sclang > > This division makes (most of the time) total sense, however it also has > its limitations (unable to change low-level behaviour easily, > block-size-based limitations on inter-ugen feedback, ...) > In faust, there is no such division (a good thing!), hence I have to > create my own (artificial) abstraction layers between microscopic and > macroscopic structure. > For diving into (my own active) faust development, I would be interested > in how people tackle this kind of complex interface in a faust-centered > setup. > > Maybe it would be beneficial to have some kind of workshop on how to e.g. > implement an experimental high-level synthesis system (supercolliderwould > call that "SynthDef" ) based on (pre-existing) LP/HP filters, oscillators, > etc., and another workshop on how to create high-order control such as > reordering components, playing several "SynthDefs" at once, creating a > routing environment for such "SynthDefs"? > > > ------------- > > > ## towards better code examples > > It is fascinating to see, how much time and effort went into faust > documentation and tutorials. Many variants of teaching and accessibility > (e.g. via online courses and web environments) were tried, all of them have > their benefit and reason of existence. > However, it is difficult for me, as a newbie to faust, to understand, > which are the currently "official" tools to be used. As I understand e.g., > the faustLive system was pushed for some time but is now overcome by > faustIDE / faustEditor (which one is the way to go?). > > As a sidenote, I really enjoyed (and still am enjoying) looking at > magnetophon's source-code for compressor building blocks: > https://github.com/magnetophon/faustCompressors because I understand not > only technical parts of the sources but also the reason why certain things > are implemented in that way. magnetophon really tries hard (and succeeds) > to make the implementation accessible to understand and alter. > > I would be very happy to see more such code and also be encouraged to > write such extensively documented code in e.g. tutorials. > The existing tutorials are really cool, however, sometimes I have the > feeling that tutors are (understandably!) very much into the fact that > things can be expressed with really little amount of characters. > This, unfortunately, comes with a lack of readability (at least for the > unskilled tutorial follower), though. A more haskell-oriented styleguide in > which documentation is an integral part of the implementation would IMHO > benefit the tutorials. > > -------------- > > ## consistency > > I am thrilled to see that consistency of documentation is currently pushed > a lot. I think it is very important for people to have a reliable source of > information that makes it easy to search and extract information from. > Thank you for that! > > > > > ------------ > > cheers and thanks to everyone involved, faust is a really powerful tool I > am thrilled to investigate further! > > Till > > On 1. Jun 2020, at 08:57, Giuseppe Silvi via Faudiostream-users < > faudiostream-users@lists.sourceforge.net> wrote: > > Hello, > I think Faust is an excellent musical tool. I approached it in 2013, > during my master's studies in electronic music, and now it is my main means > of teaching (electroacoustic and interpretation of the electroacoustic > repertoire) and music composition. > > In my opinion, currently, the international musical community lives a deep > scission between technology and literature, with a huge interest in > technology and a great void of interest and knowledge about literature. > This condition, at the edge, brings to the point of making the musical, > compositional, interpretative use of musical software superfluous. > > Faust has an enormous resource, the open and multi-level access to the > library structure. I like the necessity of this conversation, so thank you > Yann, to evaluate if Faust could be the environment in which the library > could contain perfect musical objects, like the actual perfect technical > objects, and become the birthplace of a true electroacoustic community. > > We have started, in Rome, a process of consciousness (Faust Based) and we > have some complete works > - Michelangelo Lupone - Mobile Locale, for percussion and live electronics > (porting from fly30) > - Alvin Lucier - I'm sitting in a room (super-accessible environment) > and we are working on Luigi Nono's Post-prae-ludium per Donau and > Risonanze Erranti. > > https://github.com/s-e-a-m > > A student realized the Agostino di Scipio Ecosystem Audible 2. > > https://gitlab.com/DavideMaggio/ae > > So, I totally agree with Dario, Faust could be really complete with a > library of musical instruments, we could aspire to be really complete > filling that void. > > Thanks, > Giuseppe > > > > On 29 May 2020, at 10:50, Yann Orlarey <orla...@grame.fr> wrote: > > We plan to organize new Faust online workshops in the coming weeks. Among > the themes we have thought of, two of them involve contributions from the > community. And we'd love to hear what you think about them. > > 1/ Workshop Q&A > The idea would be to collect in advance questions and problems that you > may have about Faust and for which we will try to find answers. Then we > will organize a workshop where the most representative questions will be > presented as well as the answers we can give them. > > 2/ Workshop Faust based projects > There are now many projects that use Faust to varying degrees. The idea > would be to have the developers of these projects do a 10mn informal > presentation/demo of their project. We could imagine having a dozen or so > projects present > > The two other workshops we have thought of are: > > 3/ a workshop dedicated to architecture files and how to design them. > > 4/ a workshop for the general public on writing VST plugins with Faust. > > Tell us what you think. If the first two seem interesting to you, we'll > start collecting questions and projects very quickly. > > Thanks > > Yann > > > Yann Orlarey > Directeur scientifique/Scientific director > > > orla...@grame.fr T : +33 (0) 4 72 07 37 00 > GRAME - Centre national de création musicale > 11 cours de Verdun Gensoul | 69002 Lyon > www.grame.fr | facebook | instagram | twitter > _______________________________________________ > Faudiostream-users mailing list > Faudiostream-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/faudiostream-users > > > > > _______________________________________________ > Faudiostream-users mailing list > Faudiostream-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/faudiostream-users > > > -- > Till Bovermann > > https://tai-studio.org | http://lfsaw.de | > https://www.instagram.com/_lfsaw/ > > > > > > > > > > > > > > _______________________________________________ > Faudiostream-users mailing list > Faudiostream-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/faudiostream-users > > > _______________________________________________ > Faudiostream-users mailing list > Faudiostream-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/faudiostream-users > -- www.jeremykeenan.info www.callandresponse.org.uk
_______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users