[PD] [*] vs [*~]

Mathieu Bouchard matju at artengine.ca
Wed Dec 27 21:57:55 CET 2006


On Wed, 27 Dec 2006, Charles Henry wrote:

> What about efficiency?  There may be certain advantages to defining
> the data types, and constraining _inlets_ and atom types during
> editing, rather than at run time.  (that's just a guess)

Yes, it's an easy way to get such efficiency, and for example, this is 
what happens in very-typed (expression-typed) languages like C++ and Ocaml 
and Haskell (and maybe Java 1.5 but not Java 1.4 nor C nor ObjectiveC). 
This is good because it means that those things can run very fast without 
requiring a runtime compiler, so, the compiler can be kept separate from 
the program being compiled. (In Ocaml and Haskell though, types are 
implicit AND already known before the program starts.)

In Pd, the only compilation going on is dsp_add(), and it's done at 
runtime already (during editing). So, the compiler is never in a different 
process (task) than the DSP. The only advantage remaining is 
predictibility of execution time, but only if it's assumed that the more 
implicit system (the more "runtime" one) doesn't have strict rules that 
allows one to know the type of an object's output. This might be a 
strawman, if we don't take the time to figure out whether any such strict 
rules can be defined: either implicit expression-typed, or a more 
runtime-oriented system in which the runtime compiler is taken into 
account when computing realtime constraints.

  _ _ __ ___ _____ ________ _____________ _____________________ ...
| Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju
| Freelance Digital Arts Engineer, Montréal QC Canada


More information about the Pd-list mailing list