ID:850053
 
Keywords: code, command, input, prompt
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?
When you say "program", do you mean a BYOND program? Or any program? Because there are a number of scripting languages that support that (python, JavaScript, ActionScript, ect). There have been a couple of BYOND games with custom scripting languages, too (oddly enough, most Robot Wars themed):

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.
You forgot Console, DarkCampainger.
In response to Super Saiyan X
Super Saiyan X wrote:
You forgot Console, DarkCampainger.

I couldn't remember its name, but apparently it's unavailable anyways.
Mm. That's strange. I definitely recall having host files for Console hosted on my Member files. I guess I deleted them. I'll check around for them.

Edit:
Found it & Uploaded: http://files.byondhome.com/SuperSaiyanX/console.zip
DarkCampainger wrote:
When you say "program", do you mean a BYOND program? Or any program?

Yes, I did specifically mean a BYOND or DM written program. Sorry if that wasn't very clear. The idea was to basically convert the entire DM language into a scripting one, where you could input pieces of actual DM code as commands to run immediately, without compiling. Of course it would probably need some form of fail-safe parsing, to keep the program running regardless of any code errors that might normally cause a crash.

If it could be used as some form of IDE, it would be quite strange that it would allow you to approach the task of development from the opposite direction; letting you enter commands that run without compiling, then allowing you to export those commands to a code file that can be compiled later as a real game. You would be able to program your game live, as it's running, while the IDE does most of the coding work for you. The code that you change within the program would only be "virtual", but it would perform exactly like the real thing, since it is actually running in the DM language, so it should be just the same as if you had compiled it. Obviously, the whole thing would require 2 separate windows: one for inputting code or changing settings, and one that represents the actual program or game you are making, which would be running live, unless you pause it or something. It's quite a strange concept, but I think it may have a lot of potential.

Anyway, those links are great finds! A virtual robotics programming system never even crossed my mind when I thought of this. I think the possibilities must be much more epic than I can yet imagine.
In response to DarkCampainger
DarkCampainger wrote:
Super Saiyan X wrote:
You forgot Console, DarkCampainger.

I couldn't remember its name, but apparently it's unavailable anyways.


I've started hosting my heavily updated and improved version on the hub entry linked to above -- take a look if you want =).