4 ms·
This language was written by a professor of mine Ge Wang, also the founder of Smule. He likes to refer to it as "strongly timed", and I think it is a really ac
by thealphanerd 13y ago
This language was written by a professor of mine Ge Wang, also the founder of Smule.
He likes to refer to it as "strongly timed", and I think it is a really accurate description. While the language does have limitations, it can also be beautifully expressive for certain things.
If anyone has any question for the author please let me know and I'll either get him to come in here or be a surrogate and answer directly
- awhitty 13y agoI'm a big fan of CCRMA. Just curious, but what is Ge working on now? And do you folks in the Knoll have any events coming up soon?
- p4bl0 13y agoI don't have the time to investigate the language, but I wonder if its semantics borrows from synchronous programming languages such as Lustre [1], Esterel [2], or Signal [3]? Those languages were designed to program discrete controllers and embedded real time systems, and they have a very strong notion of timing and scheduling (via typing) in their semantics which allows to prove functional properties such as accessibility of states, liveness, time and memory bounds, etc. using formal methods such as model checking. When I was doing my master thesis on this domain, another student in the lab (who was from an IRCAM [4] master degree) worked on the use of synchronous languages to follow a musician who plays at arbitrary speed a given music score (or something along those lines). It was quite fun! [1] https://en.wikipedia.org/wiki/Lustre_%28programming_language%29 https://en.wikipedia.org/wiki/Lustre_%28programming_language... [2] https://en.wikipedia.org/wiki/Esterel https://en.wikipedia.org/wiki/Esterel [3] https://en.wikipedia.org/wiki/SIGNAL_%28programming_language%29 https://en.wikipedia.org/wiki/SIGNAL_%28programming_language... [4] http://www.ircam.fr/?&L=1 http://www.ircam.fr/?&L=1
- diminish 13y agoI've completed the ChucK course on Coursera. As far as I can say, it doesn't borrow semantics directly from synchronous programming languages though it may parallel them. Syntactically it's similar too Java/C++. Time/Duration are data types, and you must advance "now" to generate samples and events.
- jqgatsby 13y agothat's such a nice term, "strongly timed". It seems like the correct term to use for programming languages in which time is reified and in which one can make declarative statements about time and events.