Jonathan S. Shapiro wrote:
If our notions of formal semantics in allegedly general-purpose
programming languages aren't rich enough to address this type of
real-world meaning, then it is our notions of formal semantics that
must yield (or improve).
  
Hear, hear. As a matter of fact, there are huge systems out there where performance and memory constraints are the most important. Game system engineering is one of those, and it is no wonder that to this day we still have to use C/C++ and assembly. I might have mentioned it before, but for us the important things are:
  • Complete resource control, including the possibility of having exact control over memory layout. (It would even be nice to control the location of the stack.)
  • Guarantees about stack and heap usage: Stacks do sometimes grow into memory where they shouldn't, causing the game to crash...
  • Run-time guarantees: If it looks like an O(n) routine, then it should be an O(n) routine.
  • Safety: As much statically typing as possible, but optional introspection/reflection capabilities would come in very handy.
  • Productivity: Our projects are large (500,000 - 1,000,000 lines of code), compile and link time turn-around is very important.
  • Scalability: It should be easy to re-factor code.
  • Optimization: Code should be optimizable, meaning that it should be possible to re-implement something using assembly at some point.
Thanks,

PKE.
-- 
Pål-Kristian Engstad ([email protected]), 
Lead Graphics & Engine Programmer,
Naughty Dog, Inc., 1601 Cloverfield Blvd, 6000 North,
Santa Monica, CA 90404, USA. Ph.: (310) 633-9112.

"Emacs would be a far better OS if it was shipped with 
 a halfway-decent text editor." -- Slashdot, Dec 13. 2005.

_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to