News

Pure Python!

So FoxDot is now executed as pure Python code now (finally!) which means that it doesn’t have to be run through the UI that comes with the package – and I can start thinking about putting it on PyPi too. Since its inception, FoxDot used regular expressions to preprocess some of the code but this meant that saving any work as .py file just wouldn’t make sense to a Python compiler. Now, however, FoxDot reserves all one and two character variable names for Player Objects so that using a double-arrow syntax a la p >> pads() updates an already existing Player Object instead of creating a new one. Hopefully this makes for more flexibility and people being able to import FoxDot into their own work somehow. I’m still figuring out the best way for people to actually run the environment but I’m really excited for what this means for FoxDot.

What is FoxDot?

FoxDot is a combination of two things: an interactive Python mini-text-editor and a library for making algorithmic music with code. It has been designed for Live Coding music, a practice of performing music with programming languages in front of a live audience. If you would like to know more about Live Coding, checkout toplap.org for more information!

There are several languages used to Live Code music and each has their own identity, syntax, and philosophy. One of the most widely used languages is SuperCollider, which is actually used by FoxDot to create sounds. It is extremely powerful and flexible but the trade-off is that it often requires a large amount of typing and has a fairly steep learning curve. FoxDot could be considered as a user-friendly interface to a subset of SuperCollider’s many great features.

Another language that is becoming increasingly popular in the Live Coding community is TidalCycles (often referred to as just Tidal for short). This is based in the functional programming language called Haskell and chains together pattern-making functions and applies them to the playback of audio samples (although it is also using SuperCollider now create sound as well). One of the few drawbacks to Tidal is the difficult install on Windows machines but it is still in development.

FoxDot, like Tidal, is a language that is used for describing musical patterns, but in a slightly different way. It gives certain data structures, called Player Objects, instructions defined by traditional musical concepts such as scales, octaves, and notes to play until stopped. For more information on how to get started with FoxDot, check out the start Starter Guide.

Welcome

This site is dedicated to the Live Coding application FoxDot, which was created in 2015 to try and open the pathways to people who are new to programming and want to use it create music quickly and easily. FoxDot is an easy-to-use Python application that creates an interactive programming environment that talks to the powerful sound synthesis engine, known as SuperCollider, and schedules musical events in a user-friendly and easy-to-grasp manner that makes live coding easy and fun for both programming newcomers and veterans alike.

 

FoxDot is a pre-processed Python-based programming language that provides a fast and user-friendly abstraction to SuperCollider. It also comes with its own IDE, which means it can be used straight out of the box and no fiddling around with config files; all you need is Python and SuperCollider and you’re ready to go!