A Shapeshifting Program in Design Philosophy
|
|
This is a bizarre idea that has been haunting me for a while. What if there was a DM program that could "morph" into just about anything without ever needing to be recompiled? The idea is that it would maintain dynamic lists of every keyword, proc, argument, and operator, in such a way as to allow for every possible combination to be switched on or manifested by the user's input! The user could input a chunk of code, which would then be parsed, checked against the lists, and run as if it were part of the program's source, in almost real-time. The most basic form of such a program would turn the whole DM engine into a virtual command line that does whatever you want it to, not counting resource files such as icons.
I am bringing this up, simply because I have never heard of the existence of any such monster of a program. It may be a very complex idea, but I suspect the implementation would be surprisingly simple. My curiosity would force me to try and implement it myself, but since I am working on other things right now, I thought I would just put the idea out there. I am not saying that such a program would necessarily have much use, but I wonder what the implications of such a monster would be.
One possible use I can think of would be for doing experiments and making prototypes of complex operations. Of course, this would require a more advanced implementation. You could make it possible to export the current "state" of the program as actual compilable, .dm source files. That's not to mention all the possible interface systems it could have. If polished enough, it could give users a WYSIWYG interface for designing particular types of games, and just export the code already made. Of course that would be a long way off, and is just speculation.
I think such a live code input prompt would certainly have some potential to it, but since I don't think such programs currently exist (or are very obscure), we wouldn't really know what could be done with it, without actually seeing it happen. So what do you think such a program could be used for, and what do you think it could evolve into?
|
http://www.byond.com/games/CalusCoRPS/JunkMetal
http://www.byond.com/games/D4RK354B3R/GladiatorsofMetal
http://www.byond.com/games/Gerdan/BotDuel
Nothing as comprehensive as what you described, but interesting nonetheless.