Carl Witty wrote:
On Tue, 2006-11-14 at 21:50 -0500, Gregory Maxwell wrote:
On 11/14/06, Carl Witty cwitty@newtonlabs.com wrote:>
Um. I promise that Game of Life will not be a problem. I've coded a game of life simulation in freeking qbasic on a 286 which was faster than the screen refresh rate.
Using what size grid? Would it have been that fast on Paul Rendell's Game of Life Turing Machine (1714 x 1647 cells)? What if you want to run much faster than the screen refresh rate ("what will this pattern look like after a million generations")?
Then you use a Hashlife algorithm, which is complex enough that it's not something you want just anybody to edit (and most people wouldn't want to edit it anyway). So you (find someone to) write it any way you like, in the most efficient manner you can think of, and then have it audited and included as a trusted component (and accept the blame if there are any penises hidden in it).
If you require that Java code be heavily audited, and that interpreted code only needs to be lightly audited, and if your supply of people willing and capable of doing heavy auditing is limited, then you'll end up with slower code than if you allow lightly audited Java code.
However, the supply of people capable of writing the kind of high performance code where the interpreter would really be a major disadvantage is also limited. So yes, the auditing would be a bottleneck, but it might not be _the_ bottleneck.
(Of course, anyone can write code that runs slowly. Very few people, however, can write code that not only does something slow, but really can't be made any faster except by switching to a lower level language.)