[chuck-users] future of ChucK

Daniel L. Trueman dtrueman at Princeton.EDU
Sun Jan 14 13:44:46 EST 2018

Hi Stuart,

I make standalone ChucK apps available regularly this way (on OSX):

  1.  UI made as a standalone in Max; knobs, sliders, MIDI i/o, etc… communicates via OSC to….
  2.  ChucK running as shell script (which may communicate stuff back to the UI, also via OSC)
  3.  All packaged as a single double-clickable application via Platypus (http://www.sveinbjorn.org/platypus)

I’ve had good luck with this approach, for standalone applications anyhow. Plugins are another matter… not sure if there is a Windows of Linux equivalent to Platypus, since you don’t use Mac though….

It is possible to wrap ChucK into an iOS app, though of course that is significantly more involved, and you have to construct a UI in Objective C or C++. Note that ChucK Racks uses JUCE as a C++ framework for creating plugins and so on, and we’ve used that as well; it’s very powerful, cross-platform, but is definitely more involved.

I hope this helps! I can say that I will continue to use ChucK, and know many others that do….


On Jan 14, 2018, at 1:12 PM, Stuart Roland <stuartroland at gmail.com<mailto:stuartroland at gmail.com>> wrote:

I can't speak to the future of ChucK itself, but recently I have been giving a lot of thought to MY future with Chuck. First off, I love ChucK and all the cool stuff it let's me create. I find it much more intuitive than any other audio programming language/environment I have used and I can usually create something along the lines of what I set out to create with it. My problem with it is that I really want to be able to create stand alone apps and plugins with it, which I have not found any way of doing. I would like for my software to be usable by the average musician, not just by programmer-musicians who can read ChucK code (though we are a cool bunch). I know ChucK Racks were just released (for Macs,which I don't use) but as I understand, this just let's you run ChucK scripts as a plugin, and does not provide a way to wrap up the code in any UI to distribute to musicians who are used to sliders, knobs, presets etc.

So I guess I have a few questions for everyone/anyone here: is there a way to use ChucK in a mobile or desktop app? Is there a way to connect ChucK to a GUI that is simple enough that non-programmers could use it? If not, is there another language / libraries for another language like python, for example, that has some of the great, intuitive design as ChucK? Is ChucK more of an educational tool at this point and less of a tool for developers?

Thanks for taking the time to read. Happy audio/music making!


On Jan 14, 2018 11:00 AM, <chuck-users-request at lists.cs.princeton.edu<mailto:chuck-users-request at lists.cs.princeton.edu>> wrote:
Send chuck-users mailing list submissions to
        chuck-users at lists.cs.princeton.edu<mailto:chuck-users at lists.cs.princeton.edu>

To subscribe or unsubscribe via the World Wide Web, visit
or, via email, send a message with subject or body 'help' to
        chuck-users-request at lists.cs.princeton.edu<mailto:chuck-users-request at lists.cs.princeton.edu>

You can reach the person managing the list at
        chuck-users-owner at lists.cs.princeton.edu<mailto:chuck-users-owner at lists.cs.princeton.edu>

When replying, please edit your Subject line so it is more specific
than "Re: Contents of chuck-users digest..."

Today's Topics:

   1. Re: static strings and the future (JP Yepez)

---------- Forwarded message ----------
From: JP Yepez <jpyepezimc at gmail.com<mailto:jpyepezimc at gmail.com>>
To: ChucK Users Mailing List <chuck-users at lists.cs.princeton.edu<mailto:chuck-users at lists.cs.princeton.edu>>
Date: Sun, 14 Jan 2018 15:53:30 +1300
Subject: Re: [chuck-users] static strings and the future
Hello all,

I can't say much about the development part itself, but in my experience I've noticed that ChucK is still being used widely at an academic level. I understand it's being used in a few universities that include creative technology programs and computer orchestra courses in their curriculums, including CalArts, Stanford, and VUW (New Zealand). Like Mario mentioned, it is a core part of a few Kadenze courses; I've been involved as a producer/teaching assistant in a couple of them and it seems like it's a popular language among students who are just learning how to code, and musicians who would like to develop more advanced projects. Also, ChucK Racks popped up a couple of months ago, which was pretty exciting. So yeah, I think there's quite a bit going on, but it certainly would be nice to have a more active community (I'm hoping to contribute, and hopefully I'll get to it before too long).

About the static strings issue, I think they're kind of in a shady spot. Like Gonzalo mentioned, you can't have static non-primitives in your code, but there is a workaround to this by declaring objects as a reference and then initializing them outside of the class. However, if you try to do this with strings, it will tell you that they're a primitive type and it throws an error. The best hack I've found for this is through arrays (even if the size of the array is 1 in many cases). Here's an example:

public class Container {

    static string staticString[];

    public static void init() {
        new string[1] @=> staticString;
        "Hello World" @=> staticString[0];

    public static void print(){
        <<< staticString[0] >>>;


You don't really need an init() function, and you can initialize the array on the actual script, but I usually end up with much larger classes, which is why I like to keep things clean.
Hope this helps!



JP Yepez
New Media Artist - Musician - Researcher
Website:  http://www.jpyepez.com/
Email:      jpyepezimc at gmail.com<mailto:jpyepezimc at gmail.com>
[https://images2.imgbox.com/62/2e/OWpabMBi_o.png]<https://www.instagram.com/jpyepez/> [https://images2.imgbox.com/65/2a/b3Gn8mIm_o.png] <https://twitter.com/jpyepezmusic>  [https://images2.imgbox.com/21/22/7IKM1kB9_o.png] <https://www.linkedin.com/in/jp-yepez-063928123/>

On Sun, Jan 14, 2018 at 12:19 AM, mario buoninfante <mario.buoninfante at gmail.com<mailto:mario.buoninfante at gmail.com>> wrote:

I'd like to ask the same question about the development status.

the only thing I can say is that also if the development seems to be a bit stuck, on the other side I noticed that they're pushing on the educational side (see Kadenze courses), and if you look at the github repository, there's been some update in the last 2 years.

but as you guys said, it's important to know what's the plan ;)

it's a couple of years I'm really diving into ChucK and I strongly believe that is a good programming language which opens up a lot of possibilities that other languages don't.

but at the same time I feel like it's been a bit abandoned (maybe that's a huge word, let's say put aside ;) ) and of course using a "tool"  which has an "uncertain future" it's not the best thing.

I wish I was able to offer my contribution to the development, but unfortunately I'm not really into C/C++, I'm more a "scripting language guy" :)

btw, it would be nice to hear what developers and/or other users have to say about it.



On 12/01/18 22:14, Gonzalo wrote:
Yes, I'm wondering the same thing. There's a Facebook group (https://www.facebook.com/groups/1593843507578422/) but it doesn't look super active either.

As far as static strings: I'm pretty sure you just can't have static non-primitives. What are you trying to achieve?


On 13.01.18 00:20, Atte wrote:

I've been away for a long time and surprised that activity seems to have slowed down a lot, both on the development of new releases chuck and the life of this list. Am I looking at the wrong places? What's the status of chuck development now and in the future?

I really like chuck (mostly the timing and sporking including Machine.add()), should I look other places for a language that will privide a more secure future? I'm on linux and looked at Csound, Super Collider and PD, each has it's challenges in how I work (realtime generative and algorithmic MIDI), python seems to have realtime problems (garbage collection at random points). Any idea what former chuck users have switched to now?

Back to chuck! A problem that I never been able to solve, static strings:

public class A {
     "b" @=> static string B;

     public static void C(){

That throws an error, how would I go about what I'm trying to do?


chuck-users mailing list
chuck-users at lists.cs.princeton.edu<mailto:chuck-users at lists.cs.princeton.edu>

chuck-users mailing list
chuck-users at lists.cs.princeton.edu<mailto:chuck-users at lists.cs.princeton.edu>

chuck-users mailing list
chuck-users at lists.cs.princeton.edu<mailto:chuck-users at lists.cs.princeton.edu>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/chuck-users/attachments/20180114/2093537a/attachment-0001.html>

More information about the chuck-users mailing list