Log InCreate An Account
  1. News
  2. »
  3. Audio Software & Plugin Hosts
  4. »
  5. Impromptu

Impromptu updated to v2.3

-
Impromptu

Impromptu has been updated to v2.3.

New Additions in 2.3:

  • Debugger: Impromptu now has a debugger. It has limited "public" functionality in this release, primarily providing more detailed error notifications and error highlighting in the text editor. The debugger will automatically jump to an error in the code (if found) - it will also search across multiple text buffers to try to find a give function. If you don't want this automatic error jumping you can turn it off in preferences. The debugger is a work in progress with more on the way.
  • Timing Constraints: There are some new timing constraints. Particularly there is now an upper limit on the execution time of any given function call. This "execution deadline" defaults to 1 minute. This default is at a per process level and can be set per process using (sys:set-defaulttimeout samples). Additionally, any callback (now also aliased as schedule), can have a specific timeout set for it. To set a callback execution timeout you cons a time in samples to the start time (this replaces the old tagging system which is no longer available).
  • Compiler Updates: The compiler is slowly getting there. Lots of additions for this release. Certainly not ready for real world use yet but if you're feeling brave feel free to give it a go. New additions for the compiler include lambda-lifting, recursion (with tail support), variable args, named lets, scheme vectors and lists, better local stack assignment, cond and case statements, better type checking and loads more.
  • Clock and Spaces related stuff:
    • You can now sync clocks and metros using clock:sync-adjust and clock:update-metro. The clock can also be called using "natural language" things like: (clock "16:07:35") ;; clock value at 4:07pm and 35 seconds and (clock "tomorrow 16:07") ;; clock value tomorrow at 4:07pm.
    • Added spaces:reade and spaces:takee which take an element number to return as their first argument. Using a numeric conditional in a spaces call now forces the returned tuples to be ordered (the index of the tuple to use as the numeric match is the index of the first conditional).

Fixes:

  • Fixed ipc remote name proc alias problem by adding optional second return process name.
  • Fixed some remote comms connection problems (problems with remote processes closing uncleanly).
  • all AudioUnit related MIDI events (i.e. direct from impromptu to AU) now run in audio thread -> primarily for East West player. You can turn this behaviour off in the impromptu preferences (although you probably shouldn't).
  • pasting text now calls colour syntax highlight.
  • Fixed an audio file loading bug.
  • Improved performance of MIDI IO.
Discussion

Discussion

Discussion: Active

Please log in to join the discussion