Jump to content
Sign in to follow this  
anthropoid

What Languages are the ArmA Series Programmed In?

Recommended Posts

Some of my admin colleagues would :)

But yea, it's rather negligible for game development. Point was that you can't say one language is better than the other in general(I don't consider brainfuck a language :P).

Share this post


Link to post
Share on other sites

You can say that one language is better then the other one. You can compare syntax, constructions that language allows you to create, ease of development, clarity and simplicity and the way language works with it's data.

In that term, c# is much better then Java (comparing language, not runtime engines). I can provide concrete language examples of what is more elegant in c# then java.

On the other hand, for games development, C++ is a must because of speed, where both, c# and java lack.

If that guy is serious about learning language, i'd start straight with c++, from simple to more difficult stuff.

Share this post


Link to post
Share on other sites
Operative;2183988']English and Czech?

/facepalm

Share this post


Link to post
Share on other sites
so you can say "one language is better then another one for a specific task"

Nope, in this case i'd say that c# is better overall. (but Java has better runtime (JVM)

Please check this presentation comparing those 2 languages: http://www.slideshare.net/jeffz/why-java-sucks-and-c-rocks-final

I spent 10+years coding in c# (3 in perl, javascript, vbs and grown up on c++ since university) and now learning Java (basics are the same, because of syntax similar to c/c++ or c#, but i learn it because of poor android support for c++ (-: ) so i think i can compare.

All programming languages are based on mathematical theory of Turing Machines and computation theory. For me - the difference is not only what language can do, but for me most important is how easily, elegant and clean code looks like.

(compare coding in assembler vs coding in java as an example - both can create the same result, but code in java is more readable, faster to code and more error prone)

And when i compare same code in c# and same code written in Java, then c# is much more easy to read and quickier to understand.

(but i love c++ because of speed and full control over everything rather then c# or java that are higher layered languages)

Edited by yarex

Share this post


Link to post
Share on other sites

i like C# as a language much more too. it just combines all the awesome concepts of java, c++ and object pascal :D

but still there are cases where java would just win the bet. i dont know how its now but if you target to run the product mostly on linux, mono had allways issues with the user interfaces from windows.

or there is the trend to run java on microcontrollers, maybe there isnt a vm for .net available.

beside technical decisions there are also a lot of issues on the buisness side. Availability of programmers for the targeted language, costs of licenses, knowhow, previous built application, reusable applicatoins etc...

Share this post


Link to post
Share on other sites

Java on microcontrollers?

What evils has science done! :eek:

In all seriousness, never heard about it but since I imagine running a JVM with such limited hardware is not an option maybe you could compile Java syntax program into something more appropriate but it still begs the question, doesn't it?

Edited by Panda_pl

Share this post


Link to post
Share on other sites

the field where it was applied was in house optimisation. you have your standard controller with display which you can put wherever you want (windows, doors, as remote on the living room table whereever) and then hack your desired functionality in java on it.

dont know what happened to this, read about it years ago.

Share this post


Link to post
Share on other sites

C++ (+ HLSL for shaders etc.)

As for the lifelong question "what language should I learn for game dev?" - as someone said earlier, most "big" games are written in C++ since it provides both reasonable performance and object-oriented approach. So in this area, one will have to learn C++ sooner or later. Aside from the language, most parts of a game require moderate knowledge of math on the programmer's side. So if you are in high school and people tell you that you won't need math after school, trust me, basics of linear algebra definitely won't hurt your job interview.

Share this post


Link to post
Share on other sites

I think that it is utterly bizarre that anybody would suggest Java as a language to learn before C. As a part of a computer science curriculum, it does not suffice: it doesn't get down to the essentials of programming, unlike Python (or, in the past, BASIC), being too heavy with boilerplate code; it is a resource-heavy language, being bytecode-compiled rather than natively compiled; it is far too heavy with libraries for a beginning language; it ties you inherently to the class-based object-oriented system, and it does not teach certain elements of programming that a language like C does - namely, pointer syntax, which teaches you rather more about what the likes of a segmentation fault actually is than anything else above the assembly language level.

Therefore, my suggested progression would be somewhere along the lines of Python, to learn the basics quickly, followed by C, to get a greater insight into the lower-level components of programming, followed by a functional language along the lines of Scheme, Common Lisp, OCaml or Haskell, to teach people that they don't know everything yet, then optionally a course in a "nice" assembly language like ARM for those that need to understand how instructions go through the computer. Only then would I begin teaching the likes of Java/C#/Objective-C and the rest of the Smalltalk-alikes.

Java seems, from my limited perspective, to be a sufficient language for application programming, where you need to get things out quickly and be able to iterate quickly, yet have reasonable performance. It, however, is certainly not a perfect language, and doesn't really suffice as a beginning language by any means, and is certainly not a very useful language for programming games in if you want anything substantially more sophisticated than Angry Birds.

Java on microcontrollers?

What evils has science done! :eek:

In all seriousness, never heard about it but since I imagine running a JVM with such limited hardware is not an option maybe you could compile Java syntax program into something more appropriate but it still begs the question, doesn't it?

I recall that the original aim of Java was for embedded devices, so it's not that far-fetched. It is also possible using the GCJ compiler for one to compile Java code into native machine code.

Edited by RAKtheUndead

Share this post


Link to post
Share on other sites

In relation to this thread. Is it safe to say Arma 3 can be coded/scripted in C++ OR are we looking to still be working with good ole SQF? What new formats can we expect.

Thanks

Share this post


Link to post
Share on other sites

no. A3 scripting language will be SQF and Java.

Share this post


Link to post
Share on other sites

Im learning both Java and C++ in my college course for programming. Switching language each semester. I have to say though, C++ requires much more management than java. It wont error to you when you go outside the bounds on an array or vector, you can possibly destroy your OS by modifying memory that is being used by the OS. Memory leaks are another beautiful thing to deal with, particularly if you are using 'new' variables and your program crashes, the memory isn't cleared, and so after a few hours running and debugging, you might notice your memory go up 500mb or more and be unable to clear it unless you restart your system. Also alot of the debugging is done with bit flags, and comparing that to Java and its nice error messages and warnings and memory safety makes me breath a sigh of relief when I come back to Java. Still, C++ can do some things that Java cannot (like overloading operators and more container objects) so while its a very powerful language, great power comes great responsibility.

Share this post


Link to post
Share on other sites
...you can possibly destroy your OS by modifying memory that is being used by the OS...

Not unless we're talking Windows 98 here. Any reasonably modern OS with virtual memory will just shoot you down (segmentation fault).

You're right about the memory management being a bit of a pain. For a beginner I'd actually recommend starting C and C++ under Linux where you have valgrind available. It's awesome.

Share this post


Link to post
Share on other sites
Java is an convoluted POS that is so object obsessed it makes no sense.

Python is the best programming language there is. However its runtime environment('s) leaves a lot to wish for especially in terms of performance.

With Arma making the unfortunate move to Java I guess ill make a fifth attempt to learn it. Generally I give up when I cant properly set up the massive IDE's Java requires to even do hello world and there is never any good documentation them. Last time was with Take on Helis but the options the setup guide directed me to did not exist.

People say Java is easy and great to learn but they are full of crap. I have experience in C and Python since almost 10 years but i cant for the life of me understand the IDE´s Java hides behind. First you learn the language and then you use the tools around it, not the other way around.

Sorry if I got a bit passionate. I'm hopefully going back to proper school this fall to study Java. I guess we'll see then.

Huh, Python? The best programming language there is? Hahahahaha, nope!

I prefer C# over Java myself, but you're wrong when you say Java requires "Massive" IDEs. You can write Java in any text editor you want (I use Notepad++) and you can compile/run at a terminal/command window...

Please get your facts straight before posting shit.

Share this post


Link to post
Share on other sites
Huh, Python? The best programming language there is? Hahahahaha, nope!

I prefer C# over Java myself, but you're wrong when you say Java requires "Massive" IDEs. You can write Java in any text editor you want (I use Notepad++) and you can compile/run at a terminal/command window...

Please get your facts straight before posting shit.

Silly you. Its not a fact. Its an opinion.

Share this post


Link to post
Share on other sites
Java is an convoluted POS that is so object obsessed it makes no sense.

Erm... Isn't everything in Python an object (as opposed to Java)?

Python is the best programming language there is. However its runtime environment('s) leaves a lot to wish for especially in terms of performance.

http://www.jython.org/ You are welcome.

Share this post


Link to post
Share on other sites
Erm... Isn't everything in Python an object (as opposed to Java)?

I wouldn't be so sure since "Everything's an object" is the famous motto of Ruby.

Python shouldn't be underestimated. There are several aspects in video games in can handle very well, if integrated correctly - be it AI, UI, etc. As for my personal experience, it's really fun and fast to code. But that's mainly a function of a scripting-oriented language. Still, I like Python.

Share this post


Link to post
Share on other sites
Silly you. Its not a fact. Its an opinion.

Is it now? Your post seems to indicate otherwise.

Share this post


Link to post
Share on other sites
I wouldn't be so sure since "Everything's an object" is the famous motto of Ruby. There are several aspects in video games in can handle very well, if integrated correctly - be it AI, UI, etc. As for my personal experience, it's really fun and fast to code. But that's mainly a function of a scripting-oriented language. Python shouldn't be underestimated.

Ok, ok... isn't everything in fun-Python scripting-oriented-language an object? And where did underestimated Python?

Share this post


Link to post
Share on other sites

Language fanboism screams of people who have never done professional development, especially in a client based organization.

Share this post


Link to post
Share on other sites

Don't worry. A few days in the industry will cure those schoolboys from their fanboyism :x

Share this post


Link to post
Share on other sites
Language fanboism screams of people who have never done professional development, especially in a client based organization.

So true. I consider myself lucky to work with one language and technology only. But then again it's hard to stay up to speed in my own time.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×