Hi, Oberon, Modula-3, Sing# are good examples that is possible to have systems languages with GC.
You just need to provide a systems module that allows you to control memory allocations when time is needed. Or to know where the memory allocations are happening. -- Paulo "Nick Sabalausky" <[email protected]> wrote in message news:[email protected]... > "Andrej Mitrovic" <[email protected]> wrote in message > news:[email protected]... >> On 8/23/11, Nick Sabalausky <[email protected]> wrote: >>> I certainly hope so. That's desperately needed for certain domains. >> >> It would be super-useful for audio programming. If someone were to >> write a VST audio plugin for use in some music sequencer (Ableton >> Live, Steinberg Cubase, etc), they would have to guarantee there are >> *zero* pauses while the plugin is processing audio. It /might/ be ok >> to do any collections when the plugin is idling, and there's a way to >> check that in the VST SDK. But the biggest concern to me are implicit >> calls to GC due to e.g. array concatenation. >> >> I was planning on making a D wrapper library for the VST protocol, but >> until this is sorted out I think I'll just stay away from it for now. >> I don't want to have fingers pointed at me when someone writes a VST >> plug that ends up crashing some user's sequencer due to a GC >> collection (and more likely than not the companies who make sequencers >> would get fingers pointed at, which is bad). > > Yea. Basically anything real-time. That and many low-memory situations > (since it's a copying collector). > >
