| No, this couldn't be further from the truth and is the reason why things like entity component systems exist - to graft data on to code and make data-driven programming easier. In Lisp-like languages, this is more true. In C++ which most games are written in and even Lua which is a common scripting language, this isn't really true. There is a wealth of information about how code is not data all over the web - google it please. A few reasons why in C++, C, and Lua, and in general in most game programming languages code is not the same as data: - Tends not to be editor friendly - Requires heavy meta programming to achieve the same as other formats - Requires compilation and/or interpretation - Is not necessarily idempotent depending on compiler options and platform. The same data should be the same cross-platform, and code is almost definitely not because at a minimum level, it can generate vastly different assembly depending on compiler flags or processor targets. - Purely composite. I would argue that as much as we try, it's hard to compose a lot of code properly and without considerable effort in games. Conversely, composing data can be quite easy. - Cannot on its own be serialized/deserialized easy while in a runtime state - Not network transparent - Cannot be compressed/decompressed in real-time as easily See my points in other posts in this thread. I am assuming you downvoted me, which is ridiculous and childish, especially given your brief response without any reasoning or evidence despite being contrary to all computer science research. |
Composition: see meta-tables. Repeat until completion.