<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Spencer wrote:</p>
<p>*>personally be interested in a framework where ChucK can
advance not just in response to academic research but in
continuing to improve a nice programming language for musicians. I
have thought a lot about this over the years and I still don't
have an answer, but I do care :)<br>
Thoughts? <br>
</p>
<p><br>
</p>
<p>I'm not an exper by any means on open source funding, but could
you build a foundation similar to the Mozilla foundation? They
somehow kept their code alive and thriving after netscape went
away.</p>
<p><br>
</p>
<p>Just my one cent...</p>
<p>-- Rich</p>
<p><br>
</p>
<br>
<div class="moz-cite-prefix">On 1/25/2018 5:36 AM, Spencer Salazar
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CA+ezOE4Ox+ogkzzhWZRh8HwUR2cg6pMU6QVATG2Te1O-JCZ49Q@mail.gmail.com">
<meta http-equiv="Context-Type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div>Hi all,</div>
<div><br>
</div>
<div>In terms of recent developments you'll notice a flurry of
commits in the past year or so, mostly by Jack Atherton and
Ge:</div>
<div><a href="https://github.com/ccrma/chuck/commits/master"
target="_blank" moz-do-not-send="true">https://github.com/ccrma/chuck<wbr>/commits/master</a></div>
<div>Not to steal Jack's thunder but these are related to a very
interesting research project hes been developing and perhaps
can talk more about :) And in fact, at the moment we are
actually at the verge of a new release. </div>
<div><br>
</div>
<div>Chuck Racks recently came out of my group at CalArts,
though it is still very much in a beta state (and open to pull
requests :).</div>
<div><a
href="https://mtiid.calarts.edu/projects/software/chuck-racks/"
target="_blank" moz-do-not-send="true">https://mtiid.calarts.edu/proj<wbr>ects/software/chuck-racks/</a></div>
<div><br>
</div>
<div>ChucK is going strong at CalArts, where we teach it to ~50
multidisciplinary art students every year and many, many more
through Kadenze. The similarity of ChucK's syntax to e.g.
Processing, Arduino, and C++ make it an ideal starting point
for teaching this family of languages in the context of
creative coding (this is also one reason why we do not start
with teaching more well-known languages for music such as
PureData, Max, or SuperCollider). </div>
<div><br>
</div>
<div>We also use ChucK to power most of our advanced music
computing systems, for instance our entire Machine Orchestra
architecture, our musical interface design instruction, and
anything else involving physical hardware. ChucK is still the
first tool I reach for for "musical systems integration," with
its ability to synchronize between different hardware
interfaces, software environments, network endpoints, and
audio capture + emission. </div>
<div><br>
</div>
<div>Suffice it to say, my colleagues, students, and I have a
significant interest in seeing ChucK thrive and continuing to
nurture it in that direction. </div>
<div><br>
</div>
<div>That being said, if you look at the big picture of
everything I detailed above, developments in ChucK are mainly
driven by research initiatives (even the Kadenze course was
originally created as part of an NSF grant). There is no
research-oriented motivation to e.g. make static strings work
better, or to improve and update documentation. The only real
recent push to improve the user-facing aspect of programming
with ChucK came in anticipation of the ChucK book, published
in 2015, in which we allocated some funding to fix bugs and
add some sorely missing features (such as string processing
and SerialIO) -- huge thanks to Ajay for really pushing this
effort. </div>
<div><br>
</div>
<div>Aside from that, its hard for me to really see how the nuts
and bolts development of ChucK has been carried on outside of
specific research agendas, or especially motivated grad
students. I am personally be interested in a framework where
ChucK can advance not just in response to academic research
but in continuing to improve a nice programming language for
musicians. I have thought a lot about this over the years and
I still don't have an answer, but I do care :)</div>
<div><br>
</div>
<div>Thoughts? </div>
<div><br>
</div>
<div>Spencer</div>
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Sat, Jan 13, 2018 at 6:53 PM, JP
Yepez <span dir="ltr"><<a
href="mailto:jpyepezimc@gmail.com" target="_blank"
moz-do-not-send="true">jpyepezimc@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote">
<div dir="ltr">Hello all,
<div><br>
</div>
<div>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).<br>
</div>
<div><br>
</div>
<div>About the <b>static strings</b> 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:</div>
<div><br>
</div>
<div><br>
</div>
<div>
<p class="m_-4532268900663437588gmail-p1">public<span
class="m_-4532268900663437588gmail-s1"> </span>class<span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s2">Container</span><span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s2">{</span></p>
<p class="m_-4532268900663437588gmail-p2"><br>
</p>
<p class="m_-4532268900663437588gmail-p3"><span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s3">static</span><span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s4">string</span><span
class="m_-4532268900663437588gmail-s1"> </span>staticString[];</p>
<p class="m_-4532268900663437588gmail-p2"><span
class="m_-4532268900663437588gmail-Apple-converted-space">
</span></p>
<p class="m_-4532268900663437588gmail-p1"><span
class="m_-4532268900663437588gmail-s1"> </span>public<span
class="m_-4532268900663437588gmail-s1"> </span>static<span
class="m_-4532268900663437588gmail-s1"> </span>void<span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s2">init()</span><span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s2">{</span></p>
<p class="m_-4532268900663437588gmail-p3"><span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s3">new</span><span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s4">string</span>[<span
class="m_-4532268900663437588gmail-s5">1</span>]<span
class="m_-4532268900663437588gmail-s1"> </span>@=><span
class="m_-4532268900663437588gmail-s1"> </span>staticString;</p>
<p class="m_-4532268900663437588gmail-p3"><span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s6">"Hello World"</span><span
class="m_-4532268900663437588gmail-s1"> </span>@=><span
class="m_-4532268900663437588gmail-s1"> </span>staticString[<span
class="m_-4532268900663437588gmail-s5">0</span>];</p>
<p class="m_-4532268900663437588gmail-p4"><span
class="m_-4532268900663437588gmail-Apple-converted-space">
</span><span
class="m_-4532268900663437588gmail-s2">}</span></p>
<p class="m_-4532268900663437588gmail-p2"><span
class="m_-4532268900663437588gmail-Apple-converted-space">
</span></p>
<p class="m_-4532268900663437588gmail-p1"><span
class="m_-4532268900663437588gmail-s1"> </span>public<span
class="m_-4532268900663437588gmail-s1"> </span>static<span
class="m_-4532268900663437588gmail-s1"> </span>void<span
class="m_-4532268900663437588gmail-s1"> </span><span
class="m_-4532268900663437588gmail-s2">print(){</span></p>
<p class="m_-4532268900663437588gmail-p3"><span
class="m_-4532268900663437588gmail-s1"> </span><<<<span
class="m_-4532268900663437588gmail-s1"> </span>staticString[<span
class="m_-4532268900663437588gmail-s5">0</span>]<span
class="m_-4532268900663437588gmail-s1"> </span>>>>;</p>
<p class="m_-4532268900663437588gmail-p4"><span
class="m_-4532268900663437588gmail-Apple-converted-space">
</span><span
class="m_-4532268900663437588gmail-s2">}</span></p>
<p class="m_-4532268900663437588gmail-p3">}</p>
<p class="m_-4532268900663437588gmail-p2"><br>
</p>
<p class="m_-4532268900663437588gmail-p3">Container.init();</p>
<p class="m_-4532268900663437588gmail-p3">Container.print();</p>
<p class="m_-4532268900663437588gmail-p2"><br>
</p>
</div>
<div><br>
</div>
<div>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.</div>
<div>Hope this helps!</div>
<div><br>
</div>
<div>Best,</div>
<div><br>
</div>
<div>JP</div>
<div><br>
<div class="gmail_extra">
<div>
<div class="m_-4532268900663437588gmail_signature">
<div dir="ltr">
<div>
<div dir="ltr">
<div>
<div dir="ltr">
<div><br>
</div>
<b>JP Yepez</b>
<div>
<div><span>New Media Artist - Musician
- Researcher</span></div>
<div>Website: <a
href="http://www.jpyepez.com/"
target="_blank"
moz-do-not-send="true">http://www.jpyepez.com/</a></div>
<div>Email: <a
href="mailto:jpyepezimc@gmail.com"
target="_blank"
moz-do-not-send="true">jpyepezimc@gmail.com</a></div>
<div>------------------------------<wbr>--------------------------</div>
<div><a
href="https://www.instagram.com/jpyepez/"
target="_blank"
moz-do-not-send="true"><img
moz-do-not-send="true"></a><span>
<a
href="https://twitter.com/jpyepezmusic"
target="_blank"
moz-do-not-send="true"><img
moz-do-not-send="true"></a><span>
<a
href="https://www.linkedin.com/in/jp-yepez-063928123/"
target="_blank"
moz-do-not-send="true"><img
moz-do-not-send="true"></a></span></span><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<div class="h5">
<br>
<div class="gmail_quote">On Sun, Jan 14, 2018 at
12:19 AM, mario buoninfante <span dir="ltr"><<a
href="mailto:mario.buoninfante@gmail.com"
target="_blank" moz-do-not-send="true">mario.buoninfante@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote">Hi,<br>
<br>
I'd like to ask the same question about the
development status.<br>
<br>
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.<br>
<br>
but as you guys said, it's important to know
what's the plan ;)<br>
<br>
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.<br>
<br>
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.<br>
<br>
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" :)<br>
<br>
btw, it would be nice to hear what developers
and/or other users have to say about it.<br>
<br>
<br>
cheers,<br>
<br>
Mario<span
class="m_-4532268900663437588gmail-im
m_-4532268900663437588gmail-HOEnZb"><br>
<br>
<br>
<br>
On 12/01/18 22:14, Gonzalo wrote:<br>
<blockquote class="gmail_quote">
Yes, I'm wondering the same thing. There's
a Facebook group (<a
href="https://www.facebook.com/groups/1593843507578422/"
rel="noreferrer" target="_blank"
moz-do-not-send="true">https://www.facebook.com/grou<wbr>ps/1593843507578422/</a>)
but it doesn't look super active either.<br>
<br>
As far as static strings: I'm pretty sure
you just can't have static non-primitives.
What are you trying to achieve?<br>
<br>
Cheers,<br>
Gonzalo<br>
<br>
<br>
On 13.01.18 00:20, Atte wrote:<br>
<blockquote class="gmail_quote">
Hi<br>
<br>
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?<br>
<br>
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?<br>
<br>
Back to chuck! A problem that I never
been able to solve, static strings:<br>
<br>
public class A {<br>
"b" @=> static string B;<br>
<br>
public static void C(){<br>
<<<B>>>;<br>
}<br>
}<br>
<br>
That throws an error, how would I go
about what I'm trying to do?<br>
<br>
Cheers<br>
<br>
</blockquote>
<br>
</blockquote>
<br>
</span>
<div
class="m_-4532268900663437588gmail-HOEnZb">
<div class="m_-4532268900663437588gmail-h5">
______________________________<wbr>_________________<br>
chuck-users mailing list<br>
<a
href="mailto:chuck-users@lists.cs.princeton.edu"
target="_blank" moz-do-not-send="true">chuck-users@lists.cs.princeton<wbr>.edu</a><br>
<a
href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users"
rel="noreferrer" target="_blank"
moz-do-not-send="true">https://lists.cs.princeton.edu<wbr>/mailman/listinfo/chuck-users</a><br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</div>
<img moz-do-not-send="true" height="1" width="1"></div>
<br>
______________________________<wbr>_________________<br>
chuck-users mailing list<br>
<a href="mailto:chuck-users@lists.cs.princeton.edu"
moz-do-not-send="true">chuck-users@lists.cs.<wbr>princeton.edu</a><br>
<a
href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users"
rel="noreferrer" target="_blank" moz-do-not-send="true">https://lists.cs.princeton.<wbr>edu/mailman/listinfo/chuck-<wbr>users</a><br>
<br>
</blockquote>
</div>
<br>
<br>
<div><br>
</div>
-- <br>
<div class="gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr">
<div>
<div dir="ltr">
<div>
<div dir="ltr">
<div>
<div dir="ltr">
<div>
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div>
<div>
<div>Spencer Salazar, PhD</div>
<div>Special Faculty</div>
<div>Music Technology:
Interaction, Intelligence, and
Design</div>
<div>California Institute of the
Arts</div>
<div><br>
</div>
<div><a
href="mailto:ssalazar@calarts.edu"
target="_blank"
moz-do-not-send="true">ssalazar@calarts.edu</a> |
+1 831.277.4654</div>
<div><a
href="https://spencersalazar.com/"
target="_blank"
moz-do-not-send="true">https://spencersalazar.com</a> </div>
</div>
<div><br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
chuck-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:chuck-users@lists.cs.princeton.edu">chuck-users@lists.cs.princeton.edu</a>
<a class="moz-txt-link-freetext" href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users">https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a>
</pre>
</blockquote>
<br>
</body>
</html>