Difference between revisions of "ChucK/Features/Main"

From CSWiki
Jump to: navigation, search
(ChucK Feature Requests)
m (Bad Ideas)
Line 58: Line 58:
  
 
* MucK: okay, this is going further into la-la land.  MATLAB / ChucK extension.<br/>Diemo Schwarz and I had once envisioned this renegade concept of doing analysis in MATLAB and (somehow) using ChucK from within MATLAB to quickly (and concurrently) playback/synthesize/audisize on-the-spot.  I wonder if anyone still wishes for this.
 
* MucK: okay, this is going further into la-la land.  MATLAB / ChucK extension.<br/>Diemo Schwarz and I had once envisioned this renegade concept of doing analysis in MATLAB and (somehow) using ChucK from within MATLAB to quickly (and concurrently) playback/synthesize/audisize on-the-spot.  I wonder if anyone still wishes for this.
 +
 +
* [[JucK]]: ChucK running on top of Java
  
 
* MUSHCK: Multi-User Shared Hallucination ChucK. Multiple users can log in to the VM process, chat with each other and interact with ChucK remotely, while ChucK sends audio streams back to them.
 
* MUSHCK: Multi-User Shared Hallucination ChucK. Multiple users can log in to the VM process, chat with each other and interact with ChucK remotely, while ChucK sends audio streams back to them.
Line 68: Line 70:
  
 
* HucK: ChucK for those lazy afternoons floating down the Mississippi River
 
* HucK: ChucK for those lazy afternoons floating down the Mississippi River
 
* JucK: ChucK running on top of Java
 
  
 
* KucK: Realtime sauerkraut generator
 
* KucK: Realtime sauerkraut generator
Line 81: Line 81:
 
* RucK: A ChucK concert given by an unemployed Wall Street television personality.
 
* RucK: A ChucK concert given by an unemployed Wall Street television personality.
  
* TucK: Any Chuck program that generates lullabies.
+
* StucK: A ChucK program that contains an infinite loop.
 +
 
 +
* TucK: Any ChucK program that generates lullabies.
  
 
* YucK: A ChucK program that executes correctly but which otherwise seems generally unpleasant.
 
* YucK: A ChucK program that executes correctly but which otherwise seems generally unpleasant.

Revision as of 18:30, 17 May 2006

ChucK Feature Requests

  • run ChucK as a VST plugin inside other hosts
  • a debug/trace option and/or debugger for easier debugging and ChucK learning.
  • [Linux] ALSA sequencer support for MIDI control.
  • Ability to compile support for several IO schemes.
    • Maybe by making this kind of stuff modular (welcome to plugin land).
  • Maybe support for using/controlling LADSPA plugins? http://www.ladspa.org
  • Include statement. Would make it easier to reuse code
  • Ogg/Vorbis
  • FLAC
  • ChucK for Puredata
  • envelope ugen capable of curved envelopes
  • Auto-Fades for + - =
  • ChucK as a DSSI plugin, http://dssi.sourceforge.net/
  • Instructions/tips for people using ChucK on Windows XP
  • when using --add print out the status line (to VM console)
  • Function pointer types, so that sporked code can be pointed at controls as well as ugens.
  • anonymous function blocks. e.g. spork ~ { dosomething }. Why? becuase it would be really useful for scoring multiple voices when playing melodic instruments. Makes it possible to easily write scores in ChucK.
  • Either support for include files, or support for #line directives in the parser so that a C preprocessor can be used.
  • support for timed OSC messages.
  • Ability to pass in command-line parameters: Place any command-line arguments of the form "NAME=VALUE" into the environment, so that they it be access with getenv(). (or maybe -"-defineNAME=VALUE"). Or both.
  • Have "the_end" evaluate to zero so we can use "until(the_end)" as a cooler way of saying "while(true)"

Good Ideas

  • arrays (DONE)
  • file inclusion (header files)
  • objects (DONE)
  • synchronous / asynchronous events (DONE)
  • implicit casting (DONE)
  • global value map
  • shred local adc/dac
  • cross chucking
    • what is cross chucking?
  • stereo (DONE)
  • multi-channel (DONE)
    • wow, it's only mono? (not anymore!)
  • OSC (OpenSound Control) ( SOME )
  • automatic OSC address spaces ; /machine/shred[1]/variables/foo , /machine/add ( ON THE WAY )
  • midi parsing/routing object ( SOME )
  • sndbuf proper sndbuf / sndplayer / sndrecorder collection
  • duration expressions
  • widgets ( once visuals are up )
  • synchronization
  • ability to remove a shred AND the shreds it sporked (its children) from the command line. (DONE)

(potential) parallel efforts

  • GLucK (OpenGL for ChucK) this is almost ready for release
  • TrucK: ChucK to C/C++ translator (for embedded platforms, and for non-on-the-fly native compilation). Paul Botelho and I talked about this last night. (I just now made up the name)
    • Would it be possible to run it on processors without floating point support, like StrongARM / Xscale?

Bad Ideas

  • make ChucK more like COBOL
  • MucK: okay, this is going further into la-la land. MATLAB / ChucK extension.
    Diemo Schwarz and I had once envisioned this renegade concept of doing analysis in MATLAB and (somehow) using ChucK from within MATLAB to quickly (and concurrently) playback/synthesize/audisize on-the-spot. I wonder if anyone still wishes for this.
  • JucK: ChucK running on top of Java
  • MUSHCK: Multi-User Shared Hallucination ChucK. Multiple users can log in to the VM process, chat with each other and interact with ChucK remotely, while ChucK sends audio streams back to them.
  • SucK: we need a really bad idea to go with this.
  • BucK: the commercial version
  • DucK: ChucK for migrating fowl
  • HucK: ChucK for those lazy afternoons floating down the Mississippi River
  • KucK: Realtime sauerkraut generator
  • LucK: A ChucK program that works the first time
  • PucK: Live performance version of ChucK in which the program is controlled by hockey players.
  • QucK: A ugen for DucK
  • RucK: A ChucK concert given by an unemployed Wall Street television personality.
  • StucK: A ChucK program that contains an infinite loop.
  • TucK: Any ChucK program that generates lullabies.
  • YucK: A ChucK program that executes correctly but which otherwise seems generally unpleasant.