| On-the-fly Programming Commands
 
 
 
These are used for on-the-fly programming (see http://on-the-fly.cs.princeton.edu).  
By default, this requires 
that a ChucK virtual machine be already running on the localhost.  It 
communicates via sockets to add/remove/replace shreds in the VM, and to 
query VM state.  The simplest way to set up a ChucK virtual machine to 
accept these commands is by starting an empty VM with --loop:
 
 
 
this will start a VM, looping (and advancing time), waiting for incoming 
commands.  Successive invocations of 'chuck' with the appropriate 
commands will communicate with this listener VM. 
 (for remote operations over TCP, see below)
 
 
 --add / +
 adds new shreds from source files to the listener VM.  this 
        process then exits.
        for example:
 
 
 
 
        integrates foo.ck and bar.ck into the listener VM.  the shreds are 
        internally responsible for finding about the timing and other 
        shreds via the timing mechanism and vm interface. 
 --remove / -
 removes existing shreds from the VM by ID.  how to find out 
        about the id?  (see --status below)  for example:
 
 
 
 
        removes shred 2, 3, 8.
 --replace / =
 replace existing shred with a new shred.  for example:
 
 
 
 
        replaces shred 2 with foo.ck
 --status / ^
 queries the status of the VM - output on the listener VM.  for 
example:
 
 
 
 
        this prints the internal shred start at the listener VM, 
        something like:
 
 | 
  
  |  [chuck](VM): status (now == 0h:2m:34s) ...
   [shred id]: 1  [source]: foo.ck  [sporked]: 21.43s ago 
   [shred id]: 2  [source]: bar.ck  [sporked]: 28.37s ago |  | 
 
 
--timeprints out the value of now on the listener VM.  for example:
 
 
 something like:
 
 
 | 
  
  |  [chuck](VM): the value of now:
    now = 403457 (samp)
        = 9.148685 (second)
        = 0.152478 (minute)
        = 0.002541 (hour)
        = 0.000106 (day)
        = 0.000015 (week) |  | 
 --kill
 semi-gracefully kills the listener VM - removes all shreds first.
 
 
 --remote / @
 specifies where to send the on-the-fly command.
        must appear in the command line before any on-the-fly commands.
        for example:
 
 
 | 
  
  |  %> chuck @192.168.1.1 + foo.ck bar.ck
    (or)
 %> chuck @foo.bar.com -p8888 + foo.ck bar.ck |  | 
 sends foo.ck and bar.ck to VM at 192.168.1.1 or foo.bar.com:8888
 
 
 
 return to Documentation Home
 
 
 |