I would say its a pretty safe bet that *all* vendors use Assertions for debug builds. Its part of the ANSI c++ standard, so its not anything fancy that the props invented or anything. I can say that I know from experience that 2 of the "big" vendors use Asserts.(aside from the props)blank/diod wrote:Yeah, their debug code isn't some surface-skimming contraption, it's a monster. Sure, performance sucks during beta testing, but the payoff is evident - stability is an area where Props are untouchable. Whereas most software companies don't have extensive debug code built in and base their bugfixes on crash reports, the so-called 'assert failures' produced by Props' debug code often wouldn't have resulted in crashes at all, they merely pick up hidden problems that would otherwise go unnoticed. They're constantly testing developer builds inhouse and reporting problems to the developers, and by the time users get their hands on the beta there are barely any bugs left. It's the Toyota way.Jeremy_NSL wrote:On the topic of performance - my CPU usage went down by 2/3rds with the non-debug code. Its a huge difference. And it doesn't sound like they are done optimizing yet. So its safe to say that Record will live up to the Prop's traditionally awesome performance. And the fact that it runs on all CPU cores now should mean massive projects are possible.
All the assert does is evaluate the code state to make sure that a condition that the developer *thinks* should be true is actually true. if this fails, then the assert fails and they put the code in place to fire a message box with any pertinent info. Like you said, it doesn't mean a crash would happen.
The propellerheads choice of a closed architecture is what I would consider 100% responsible for the reliability of the code(being good devs is a piece of that too though). If there is one thing that becomes evident when you start writing code for VST/AU/Direct X or whatever, SDKs are sometimes very poorly documented, and each host supports the functionality in slightly different ways(a million ways to skin a cat and all). Its a design decision that seems to work for them, and Reason is probably one of the most stable apps around. I would bet that is their main reason for not supporting vst. Honestly Im surprised that they have not adopted their own Low Latency I/O standards since ASIO is a steinberg technology as well.
