If you can afford 3 people to work on it full-time you can do beatuful things. For example you can have vast areas of code walled-off with auto-release pools (not objecive-c pools that are scoped to a stack frame, but a custom one that's got lifetime of your choice), allowing people in those areas to concentrate on complex algorithms, not memory micromanagement. Then you can have other areas of your code deal with memory directly for highest resource utilization.
Anohter thing you can do make sure to decommit all deallocated pages, and allocate all objects at the boundary of a page. Thus all buffer overruns and hanging referneces will result in a page fault, not a hard to debug corruption.
Anohter thing you can do make sure to decommit all deallocated pages, and allocate all objects at the boundary of a page. Thus all buffer overruns and hanging referneces will result in a page fault, not a hard to debug corruption.