Re: My thoughts on C# and gaming.
Jon Watte <[email protected]>
| Newsgroups | gmane.games.devel.sweng |
|---|---|
| Message-ID | <[email protected]> |
-- Americans might object: there is no way we would sacrifice our living standards for the benefit of people in the rest of the world. Nevertheless, whether we get there willingly or not, we shall soon have lower consumption rates, because our present rates are unsustainable. I think you're short-changing LISP here. It will allow you to take a LISP expression and execute it (eval it, or apply it), like a function. You can then pick it apart, re-build it, and/or mutate it, and still eval/apply it. You cannot do that in C++, and doing so in C# is a pain in the butt (and not supported in the compact CLR). The fact that some LISPs will compile a lambda expression into machine code and execute that instead of the expression is an optimization, that's often surfaced into the API of the language, but is not really part of the core language design IMO. LISP was initially designed to be interpreted in the eval/apply cycle run over standard LISP lists, AFAIK. Sincerely, jw On Wed, Jan 27, 2010 at 3:54 PM, <[email protected]>wrote: > Emil Dotchevski wrote: > > Right, but can you work with code as if it were data? Can you create > > code dynamically like you can create data dynamically? From that point > > of view, it is the same. > > Mat Noguchi's point, I believe, was that code and data are not treated > identically in LISP, but people often incorrectly imply that is the > case. Specifically, you can hold pointers to compiled functions, but > you cannot manipulate the compiled function as if it was a LISP data > structure. (This of course makes perfect sense.) > > The fact that I can compile code on the fly in LISP, through built-in > mechanisms in the language, is a completely different issue. > > I can, of course, also compile code on the fly in C or C++ in exactly > the same sense that LISP can, but it is not a built-in mechanism in > the language, and it would require system-specific manipulation to > do a system() call to the compiler, loading up the compiled code > into memory, and calling it. Any good programmer should be able to > write the code to do this. It's still a completely different point > from what Mat made. > > > Christer Ericson, Director of Tools and Technology > Sony Computer Entertainment, Santa Monica > > _______________________________________________ > Sweng-Gamedev mailing list > [email protected] > http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com > _______________________________________________ Sweng-Gamedev mailing list [email protected] http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com