On 28.04.2006, at 14:30, Peter Van Roy wrote:
I just learned about an interesting programming paradigm called Functional Reactive Programming.

Thanks for sharing that (and sorry for my late reaction).

A visual data-flow language highly popular in computer music provides a somewhat similar paradigm: Max (en.wikipedia.org/wiki/Max). Max allows to create interactive (or perhaps better 'reactive') software applications which process data to create music in real time.

Of course, there are lots of little differences between Max and Functional Reactive Programming (besides the visual vs textual programming difference). For example, Max only evaluates a function (a visual box) when it gets a new value at the first argument (the left-most inlet to the box). Max supports audio data as well etc. On the other hand, Functional Reactive Programming provides for higher-order programming etc. Besides, the visual programming way leads to spaghetti code, crossing of patch chords results in weird effects etc.

Bottom line: due to its soft realtime capabilities, Oz could be very interesting for the computer music community. The module Time and Functional Reactive Programming together make a highly expressive (and clean) framework to create reactive programs in the spirit of Max.

Yet, there is one issue: realtime music application require a relatively precise timing. 10 ms is reported to be the minimal granularity which Oz allows for (http://www.mozart-oz.org/lists/oz-users/5289.html) -- garbage collection etc. aside. However, this 'grid' can in fact be too coarse for music. To give an extreme example, the MIDI successor Open Sound Control (en.wikipedia.org/wiki/Open_Sound_Control) expresses a fraction of one second by 32 bit (sound synthesis languages such a SuperCollider can be send, e.g., note events in advance with a timestamp of this precision).

Therefore my question: is there any way to get a somewhat precise timing in Oz than a grid of 10ms.

On Fri Nov 07 2003 - 08:43:08 CET, Peter Van Roy wrote:
10 ms is the periodicity of the operating system clock interrupt.

What does that mean? Is this fixed by the operating system?

Thank you very much!

Best,
Torsten

--
Torsten Anders
Sonic Arts Research Centre • Queen's University Belfast
Frankstr. 49 • D-50996 Köln
Tel: +49-221-3980750
www.torsten-anders.de

_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to