On Saturday 14 February 2004 04:55, stefan kersten wrote: > > consider an installation running 12 hours a day. the program > creates objects (events, synthesis patches, processes) > dynamically and non-deterministically, e.g. based on room > temperature or the number of unemployed people in germany > (which seems to be unbounded). > > or imagine a performance involving devices with limited > resources (e.g. PDAs). i wouldn't want the application to > crash _anytime_ because it's running out of memory. it's not > really comparable to a recording situation, where you can > start over when that happens. > > so yes, for some applications i'd call it an unreliable > hack. > Sure, I agree, in your application, it's better not to use a conventional GC. I was just saying, that in _some_ applications, it's not a problem at all. I was just trying to remind people not to automatically reject the approach of deferred GC, when the running time of the application is time-limited. (And of course I wasn't talking about PDA's here. Was I? I certainly apologize if I gave you the impression that I advocate using a garbage-collecting language for a flash-based system and/or PDA. I'm quite curious where you got this idea(?)) Larry Troxler > > > when do you turn it back on? > > > > Simple. You do a full GC whenever you stop a real-time > > run. > > that's like cleaning your appartment whenever you have > nothing important to do. there's always something to do, so > you have to do the cleaning incrementally and if possible > non-interruptively, or the garbage will spill out of the > windows. > haha. It all depends. I could say that it's like trying to clean the garbage out of your car while you're driving. I think the point is, that we probably agree, and we are just talking about different application. > i'm not opposed to garbage collection per se, i just think > that there are implementations better suited for realtime > work (like those found in supercollider, rscheme and maybe > squeak) than the reference counting or mark-and-sweep > algorithms used in most scripting languages. supercollider, > as a bonus for object oriented folks, also has constant time > method lookup. > Hmm, note to self - look into Supercollider... Actually I have no doubt that you are right, in the sense that I understand that supercollider is a langauge developed specifically for real-time sound generation. I really need to look into it. > > Incidentally, it's interesting to see that there is not much mention of > > using Ruby instead of Python, in the Linux computer-music world. > > Presumably Python must still have an advantage in some areas? > > i don't know if there are big differences in performance > (but since we're talking about garbage collection, ruby has > a mark-and-sweep collector). i, for one, favor ruby for its > cleaner object model, and snd has a ruby but no python > interface :) > > <sk> Actually, that was just a general question about the two languages, and not specifically about comparing the GC between the two; I'm sorry if that wasn't clear. I had got the impression that Ruby is intended to obsolete Python, in the sense that there are no major disadvantages to using Ruby vs. Python (apart from the current popularity of Python, of course). But, at least on this list, it seems that Ruby has not yet displaced Python as the scripting language of choice, and I wonder if there is a valid reason for that, apart from inertia and politics. Larry Troxler