Don Dailey <[EMAIL PROTECTED]> writes: > To me, the ideal language will let you seamlessly step down to high > performance coding in something just as efficient as C but be able > to use much higher level language features without "getting in the > way" of performance
Hmmm... you are just describing Common Lisp. :) Just for the records: There are complete operating systems written in Lisp on hardware much less capable than today not to mention all the tools and applications -- many of the features of the Lisp Machine and similiar systems are emerging today in tools like Visual Studio selling it to the uninformed as genuine new ideas (intellisense, LINQ, anonymous classes/functions, functions as first class objects, closures, live debugging with on the fly code changes (oh, Visual Studio has quite a long way to go to get the same flexibility in debugging Lisp systems had 30-40 years ago) and much more). As I said before: C has quite some drawbacks -- performance wise. There are a couple of things in the standard preventing perfect performance (calling conventions comes to mind but IIRC there are more). And as I said before: In many cases it's easier to get to decent performance with C, but it's hard to get best performance in any language and more often than not it's possible to get best or nearly best performance even in a dynamic typed and very high level language like Common Lisp (partly because there is no ABI defined for CL, so compilers have much more freedom than C compilers). One last point: You mentioned 50% speed gain is a big deal. No it's not. If all you do is brute force computing then you are right. But for me developing a Go engine is about complete new algorithms and ideas, I'm not interested in (pure) monte carlo like engines. And if you play with ideas, often redesigning the complete engine than C is really bad and higher level language are much more handy. So it depends very much on you goals. The main point being: Know your tools, know your goals and then choose the right tool (so you're right for monte carlo like engines -- the overall design is well-known, performance is the key, so a language like C (I think, I might prefer Ada) is quite a good choice). -- Until the next mail..., Stefan.
pgpUwP5hPBlWe.pgp
Description: PGP signature
_______________________________________________ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/