ID:992209
 
Hi BYOND! Today i looked at the BYOND DM guide. Out of curiosity, how much time it took to make the DM language. I'm just wondering?
Dan wrote the initial version over the summer/fall of '96, but that was pretty barebones compared to what we have now. Expressions used an RPN system and some of the very base commands (like view and locate) weren't available. He refined the language over the next few years, and the year 2000 brought what is essentially the modern version and the Blue Book. Of course we've made many additions via language commands and bug fixes since then. The compiler is all coded from scratch but if we were doing it today, we'd use flex/bison because that's just more intelligent.

In general I've found that the bulk of a project's development happens very early, but the maintenance and upkeep takes up a lot more time than you think.
In response to Tom
Tom wrote:
Dan wrote the initial version over the summer/fall of '96, but that was pretty barebones compared to what we have now. Expressions used an RPN system and some of the very base commands (like view and locate) weren't available. He refined the language over the next few years, and the year 2000 brought what is essentially the modern version and the Blue Book. Of course we've made many additions via language commands and bug fixes since then. The compiler is all coded from scratch but if we were doing it today, we'd use flex/bison because that's just more intelligent.

In general I've found that the bulk of a project's development happens very early, but the maintenance and upkeep takes up a lot more time than you think.

In the software's current state, do you think DM will ever be JIT-compiled? It is an interpreted language after all.
No, I don't think so. I don't think the real bottlenecks are in the VM anyway.

One day we will open source the whole thing and then maybe users can do something with it, but honestly it seems like it'd be easier to just rewrite the language from scratch, using modern tools and borrowing the best parts from DM. The way people use it now was never really how we intended, which is why new developments are tedious and in some cases very awkward to implement (eg, the whole concept of pixel movement goes against the very foundation of DM).
So it was always updating? There is no specific year. It's okay, thanks for taking your time replying to my comment Tom =) I appreciate!
In response to Tom
Tom wrote:

The way people use it now was never really how we intended, which is why new developments are tedious and in some cases very awkward to implement (eg, the whole concept of pixel movement goes against the very foundation of DM).


What was DM originally intended for/what did you assume it would be used for?
In response to Kingstone99
Tile-based MUDs.
Ah.
Open source please :(
Dont open source
The idea of BYOND being open source makes me happy. (:
Honestly the idea of remaking the entire language with modern tools sounds pretty good!
If BYOND was gonna be totally remade I believe they'd require a lot of new suggestions so it'd actually be as the BYOND Players want, anyway, that'd require a lot of time so I doubt it's gonna be remade, if pixel movement took so long imagine how would it be to remade BYOND. I agree to it though, some modern features would be great.
I don't think the DM language should be remade. It's good at its current point.
Actually, if working on BYOND is anything like working on games, and it sounds like it is; then remaking it may be the very best thing for it.

BYOND is much larger scale, yes, but there are key similarities. BYOND started long ago, and when it was started everyone involved in its designs in the beginning and months to come were far less experienced than now. This often happens with game projects, and when it does and the programmer shifts to a new project, he finds that its much more organized, much easier to work with, and he works faster, etc.

Every little bit of experience helps. I would imagine similar to the above could occur with BYOND. It would take a while to do, sure, but it could be a major relief and a massive improvement. Especially if at least one more skilled programmer were hired first. Hopefully someone more into anything Dan might have specialized in.
In response to Eternal_Memories
Eternal_Memories wrote:
If BYOND was gonna be totally remade I believe they'd require a lot of new suggestions so it'd actually be as the BYOND Players want, anyway, that'd require a lot of time so I doubt it's gonna be remade, if pixel movement took so long imagine how would it be to remade BYOND. I agree to it though, some modern features would be great.

Consider though that building pixel movement into the engine from scratch is a lot different than modifying the engine after the fact to add it in. As an after-thought, you have to do a lot more work because you might have made a lot of assumptions when working with a tile-based engine that are no longer valid and now you have to go and hunt those down and correct them. Adding it in from the beginning, you can just mold the entire engine around this from the start and not worry about it as much.
The very fact that everything they do is backwards compatible is a double edged sword. Its nice, because it almost never breaks anything, even the stuff back in 99 still compiles and still runs. On the other hand, it prevents them from doing anything major to the core that would break those backwards compatible builds.

I think since the project has had such longevity that a large push for a new core would be beneficial as a whole in lets say , BYOND v5. I think without much fuss they could easily draw a line in the sand and just say... anything made before BYOND v5 runs in an "emulated" byond / seeker, and anything compiled WITH v5 uses a the new improved build. Sorta like releasing both a backwards compatible version and the newer updated version that grows leaps and bounds because its allowed to break stuff. I think we're far enough along to accept that this 12 almost 13? year old project can start an official FORK.
In response to FIREking
FIREking wrote:
The very fact that everything they do is backwards compatible is a double edged sword. Its nice, because it almost never breaks anything, even the stuff back in 99 still compiles and still runs. On the other hand, it prevents them from doing anything major to the core that would break those backwards compatible builds.

I think since the project has had such longevity that a large push for a new core would be beneficial as a whole in lets say , BYOND v5. I think without much fuss they could easily draw a line in the sand and just say... anything made before BYOND v5 runs in an "emulated" byond / seeker, and anything compiled WITH v5 uses a the new improved build. Sorta like releasing both a backwards compatible version and the newer updated version that grows leaps and bounds because its allowed to break stuff. I think we're far enough along to accept that this 12 almost 13? year old project can start an official FORK.

I agree.
I like your ideas, but I doubt Tom is really thinking about making the engine again from scratch. Maybe if more people bought a byond membership and would also donate, he could afford for new coders to work with him, but I doubt this'll happen soon.
In response to Eternal_Memories
Eternal_Memories wrote:
I like your ideas, but I doubt Tom is really thinking about making the engine again from scratch. Maybe if more people bought a BYOND membership and would also donate, he could afford for new coders to work with him, but I doubt this'll happen soon.

I think what FIREking was stating is that we have to move forward and leave the old technology behind ;P
Page: 1 2