ID:278174
 
Me and someone are arguing. I argue that there's more to programming than just DM, DM is simply used as a stepping stone to "real" languages.

What do you think?
(9:36:42 AM) Chris: Use a *real* programming language like C++, Perl, Python, Ruby, C (9:37:18 AM) Divine o Peanut: oo, someone's developed quite the opinion (9:37:33 AM) Divine o Peanut: who's to say i'm interested in professional programming? (9:37:35 AM) Chris: Trust me, post on the forums asking if you can use the DM language in a job (9:37:47 AM) Chris: I would assume since you know DM... you would move on to beter languages (9:38:08 AM) Divine o Peanut: hmm - would you like to hear my thoughts about this? (9:38:14 AM) Chris: k (9:38:17 AM) Divine o Peanut: this might escalate into an argument though (9:38:20 AM) Divine o Peanut: still? (9:38:25 AM) Chris: k (9:38:51 AM) Divine o Peanut: Well, first of all I gotta type all mature 'cause it's just the better way to argue. (9:39:00 AM) Divine o Peanut: So anyway, other languages, better - how? (9:40:09 AM) Chris: Because... 1) it's not tied to a client 2) Many languages are cross-platform. 3) They can be interpereted or compiled 4) You have more (BETTER) tutorials and books written about the subject 5) You can use DirectX or OpenGL to create 3D programs if you wish (9:40:41 AM) Divine o Peanut: So what you say is that other languages are ostensibly better, because they allow more freedom (9:40:43 AM) Divine o Peanut: That right? (9:41:01 AM) Chris: That, and they actually have a community behind them (9:41:04 AM) Chris: a *real* community (9:41:08 AM) Chris: not people that just want to make dbz and naruto games (9:41:13 AM) Chris: people that actively develop the language (9:41:25 AM) Divine o Peanut: Which in the end concludes with more resources (9:41:27 AM) Divine o Peanut: And support. (9:41:32 AM) Chris: yes (9:41:36 AM) Divine o Peanut: So let me ask you a question - (9:42:09 AM) Divine o Peanut: which is the better language for developing very simple and high-level software games (9:42:16 AM) Divine o Peanut: Python, or Assembly? (9:42:31 AM) Chris: well, neither (9:42:42 AM) Chris: Python would be interepted code, and you wouldn't want people editing the source to your own game (9:42:51 AM) Chris: And Assembly would be too much of a PITA to maintain (9:42:57 AM) Divine o Peanut: That's pointless presumption. (9:43:11 AM) Chris: Ok, go make a game in assembly then :) (9:43:12 AM) Divine o Peanut: I don't mind people editing my source code - whoc ares about that? (9:43:23 AM) Chris: You never said what kind of game (9:43:25 AM) Chris: could be a MMORPG (9:43:29 AM) Chris: You don't want people cheating (9:43:32 AM) Divine o Peanut: Fine. (9:43:33 AM) Divine o Peanut: A platformer. (9:43:35 AM) Divine o Peanut: It hardly matters. (9:43:43 AM) Chris: I'd say it matters a lot. (9:43:49 AM) Chris: But; for that, I'd say python (9:43:52 AM) Divine o Peanut: You're arguing about the nooks. (9:44:02 AM) Divine o Peanut: I'm talking about the general idea. (9:44:15 AM) Chris: You're just arguging me into choosing your answer :P (9:44:23 AM) Chris: You always play games you can't lose at ;) (9:44:27 AM) Divine o Peanut: Undoubtly, when given a choice, a platformer is better made in Python than in Assembly. (9:44:47 AM) Chris: That's exactly why I said earlier, you learn more programming languages because one may fit the task better than another (9:44:52 AM) Divine o Peanut: I'm *not* arguing you into choosing my answer, it was a rhetoric question int he first place. (9:44:55 AM) Divine o Peanut: Exactly. (9:45:04 AM) Divine o Peanut: Then next question: (9:45:22 AM) Divine o Peanut: Does the fact that a platformer is better made in Python make Assembly a worse langauge? (9:45:24 AM) Divine o Peanut: language* (9:45:39 AM) Chris: Once again, your playing games you can't lose. (9:45:43 AM) Chris: You already know the answer I'd give. (9:45:51 AM) Divine o Peanut: Your answer is "no" (9:46:06 AM) Divine o Peanut: Then we both agree that different languages are to serve different tasks (9:46:26 AM) Divine o Peanut: and even though assembly is a language in which a platformer can definitely be made in, it would be much more difficult and time consuming (9:46:38 AM) Divine o Peanut: hence for the purpose of making a platformer, Python is the better (9:46:54 AM) Chris: well, I'd still say neither simply because you don't know what kind of platformer (9:46:57 AM) Divine o Peanut: however, had we asked which of the two languages is better for making an antivirus program, we would likely choose Assembly (9:47:07 AM) Chris: Python wouldn't be able to keep up with huge intense 3D graphics with 6xAA (9:47:19 AM) Chris: Who the **** writes a virus program in Assembly (9:47:22 AM) Chris: Get to the point! (9:47:23 AM) Divine o Peanut: Yes - but that's just nitpicking. (9:47:25 AM) Divine o Peanut: NOD32 (9:47:34 AM) Divine o Peanut: Written in assembly. (9:47:59 AM) Divine o Peanut: The point is, that DM serves me better than other languages, in doing certain tasks (9:48:12 AM) Chris: That's what I've been saying in the first place (9:48:17 AM) Divine o Peanut: Another point is that I take an appreciation to its aesthetics (9:48:21 AM) Chris: But DM isn't a business-supported language (9:48:26 AM) Divine o Peanut: And the third point is, (9:48:40 AM) Divine o Peanut: that there is no "better" language, and that they all suit different personalities and goals. (9:48:58 AM) Divine o Peanut: We were never talking about businesses, you said DM was a worse language than C++ in general. (9:49:02 AM) Divine o Peanut: And that I should program in other languages. (9:49:33 AM) Divine o Peanut: That's obviously not true, and DM is not inferior to C++ in many ways. (9:49:39 AM) Divine o Peanut: er, (9:49:41 AM) Chris: Well, they're IS such a thing as a bad language (9:49:42 AM) Divine o Peanut: C++ being an example (9:50:06 AM) Divine o Peanut: Yes - (9:50:12 AM) Divine o Peanut: but not in the level we're talking about (9:50:20 AM) Divine o Peanut: Parody languages are probably, by all means, bad (9:50:23 AM) Divine o Peanut: as are badly designed languages (9:50:29 AM) Divine o Peanut: but DM is neither of those (9:50:58 AM) Chris: Let's let the BYOND community decide...
Its a lot slower then other languages but unlike other languages it advertises itself when you run it and it distributes itself. Its also nice because you only have to program the server side of it although that is what probably slows it down the most.
In response to Chowder
BYOND isn't a language; more like scripting.
In response to Mista-mage123
Mista-mage123 wrote:
BYOND isn't a language; more like scripting.
I can assure you it is a programming language o.o?
DM is a good language.

I agree with DoP.
The question is meaningless because it has no context. If you're looking to create a 3D shooter, then BYOND is the wrong platform. If you want to create a major productivity app like Excel or something that does a lot of specialized file work like for instance an audio editor, again BYOND is the wrong platform. But for many kinds of games, BYOND is a very good choice because DM is a very good language.

But the same could be said of any other language. People write games in Java, but C++ is much easier to optimize for the high-performance computing needed by some games. Perl is an atrocious language for writing games but it can be done; it sees much more use online because its strength is text parsing.

I don't think DM is merely a stepping stone to other languages. I was programming games in C++ before I ever came to BYOND. The language and the platform bring their own strengths to the table.

Lummox JR
In response to Lummox JR
"[embedded + expressions] FTW"

Also, try working your head around any other model of inheritance out there. Until you get into other languages, you have no clue how intuitive and comfortable nested inheritance and the parent_type var are.
For certain types of games, it's a good language. It will never be like C++, which is good for any kind of game. The trade-off, though, is that the learning curve to making any kind of graphical game in C++ is much, much steeper than to make one in DM. However, you also have the benefit of not working against the system (i.e., trying to make a pixel movement system or isometric system in DM's tile-based structure).

It's a good language for some things. It's not an excellent general-purpose language for everything.
In response to IainPeregrine
IainPeregrine wrote:
"[embedded + expressions] FTW"

Also, try working your head around any other model of inheritance out there. Until you get into other languages, you have no clue how intuitive and comfortable nested inheritance and the parent_type var are.

I with there was a lower level, more powerful version of DM out there. DM as it is now unfortunately isn't very fast, and it usually forces you to work with functions that only work a specific way and can't be efficiently redesigned (such as invisibility, opacity, and the grid map as a whole), and it forces you to tote the BYOND suite around with it wherever it goes.

I love the syntax and features of DM, but I hate the limitations on what it can do.
In response to Foomer
Foomer wrote:
I with there was a lower level, more powerful version of DM out there. DM as it is now unfortunately isn't very fast, and it usually forces you to work with functions that only work a specific way and can't be efficiently redesigned (such as invisibility, opacity, and the grid map as a whole), and it forces you to tote the BYOND suite around with it wherever it goes.

I love the syntax and features of DM, but I hate the limitations on what it can do.

I'm working on that, but right now the game engine features are lacking. When I have something comparable to BYOND in a usable state, you can bet I'll let you know.
What's really funny is the argument about community.

BYOND does have a community, and that community WANTS to help contribute to the language and the IDE and all the related software.

The only thing standing in the way is the bull-headed refusal to allow source code access to interested developers. There's always some really lame excuse when the issue comes up; but it stems from an obsessive self-destructive desire to maintain total control over the platform.
In response to Ryan P
Do you have an off button?
In response to Ryan P
Ryan P wrote:
I'm working on that, but right now the game engine features are lacking. When I have something comparable to BYOND in a usable state, you can bet I'll let you know.

I'm sorry, it sounds like you're saying that you're working on something outrageous, and I maybe would like to observe your ideas and possibly contribute. Where can I learn more?
In response to Kuraudo
Kuraudo wrote:
Ryan P wrote:
I'm working on that, but right now the game engine features are lacking. When I have something comparable to BYOND in a usable state, you can bet I'll let you know.

I'm sorry, it sounds like you're saying that you're working on something outrageous, and I maybe would like to observe your ideas and possibly contribute. Where can I learn more?

When I say "not in a usable state", I really mean it. I've got a design and a software system that I'm rapidly adding functionality to in order to lay the groundwork for an elegant, easy-to-use game engine.

If you (or anybody else) would like details and don't mind wading through poorly documented source code and half-implemented, unexciting features, e-mail me (ryanprior c/o gmail.com) and I'll explain what I've got and where I'm going.
In response to Ryan P
Ryan P wrote:
If you (or anybody else) would like details and don't mind wading through poorly documented source code and half-implemented, unexciting features, e-mail me (ryanprior c/o gmail.com) and I'll explain what I've got and where I'm going.

Would you mind to use a BYOND blog (or even better, set up a forum for this in your Account Management)?
That would save you and everybody interested the hassle of multiple emails and double/triple suggestions, since it would only require you to post once and everybody else could read and respond to both you and the other feedback.
In response to Schnitzelnagler
Schnitzelnagler wrote:
Would you mind to use a BYOND blog (or even better, set up a forum for this in your Account Management)?
That would save you and everybody interested the hassle of multiple emails and double/triple suggestions, since it would only require you to post once and everybody else could read and respond to both you and the other feedback.

I'm not making a product announcement, or even setting out a public project roadmap or anything. I welcome questions from interested BYONDers and if I get significant volume I'll set up an e-mail list. Blog posts and forums will come once I've got something noteworthy to share.
In response to Ryan P
Aww, ok. I simply dislike e-mail(list) and was hoping I could simply join the forum to keep updated on your progress together with my normal surfing of byond.com.
In response to Mista-mage123
Well, BYOND isn't a language, but the programming language it uses, DM, is. It is not scripting. It using a binary VM. As I understand it, it is much like java in that way.

Programming languages such as Python and Perl are scripting languages, but they are still programming languages, but don't compile. You should read more on what makes something a language and what makes something scripting, because the are not exclusive at all. Javascript is a programming language, but it is fully scripted(well, there are javascript VMs in many modern browers, but I'm not sure if the javascript is compiled or what). It is likely the most popular scripting language in the world, but it is still a language as much as C++ is.
In response to Danial.Beta
Python is a compiled language. See http://docs.python.org/library/compiler.html for the documentation.

Javascript is run in a virtual machine on modern browsers. Google's is called V8 (http://code.google.com/p/v8/), Mozilla's is called tracemonkey (https://wiki.mozilla.org/JavaScript:TraceMonkey), and Microsoft and Apple have both launched similar technologies though I don't know what their codenames are.
In response to Ryan P
I would appreciate the transparency a mailing list brings.
Page: 1 2