Consider the options now...C, C++, Java, Perl, etc...
Perl?
Perl?
HAHAHAHAHAHAHAHA!!
making games in perl :)
perl is not versatile enough. Use Borland C++ Builder, no low level crap,
direct x support, C++ for kick ass stuff, its not Microsoft! :) If you want to
make an OS you best be learning some hardcore C/C++ w/ Assembler. Even then
you have to know portability well to be sure if it will work on all Chips.
Just Some Thoughts,
Don't Kill the messenger
Michael
Here we go again... Couldn't we just put the forthcoming flame-war in
the FAQ?
What... _all_ of it? That'd be one _long_ download... :)
--
Sean Timarco Baggaley
Proper email address is: stbaggaley at solarflair dot demon dot co dot uk
Do not use 'Reply-To' if urgent; use my proper address (above).
> What is the easiest AND most
> versitile programming language out there. We are talking easy as in your 10
> year old kid could be developing the next operating system with and
> versitile in the sense that it could produce ANYTHING.
> Consider the options now...C, C++, Java, Perl, etc...
I find that whistling Z-80 opcodes directly into a modem works best,
though I will concede that under some exceptional circumstances (complex
stock market trading applications, air traffic control systems, etc)
very high level languages like Tandy TRS-80 Model I Basic have found a
niche market.
Steve
------------------------------------------------------------------
Steve Taylor st...@afs.net.au
Applied Financial Services
Phone: +61 3 9670 0233
Fax: +61 3 9670 5018
And if I can have a console with _switches_ and _leds_ on it, I'm completely
happy.
>though I will concede that under some exceptional circumstances (complex
>stock market trading applications, air traffic control systems, etc)
>very high level languages like Tandy TRS-80 Model I Basic have found a
>niche market.
Nah, that's crap. Imagine the *overhead* you have. And the waste of memory
due to comments... I'd say we all better stick with a bit of assembly and a
lot of soldering iron.
Bye,
Robert
>P.S. wrote:
>
>> Did you ever get sick and tired of all the bullshit that you had to do to
>> just produce a half decent program. All of the unneeded jargon and constant
>> repetitous code refering to the same commands? I hate all of that crap.
>> Tell me. As a question for discussion. What is the easiest AND most
>> versitile programming language out there. We are talking easy as in your 10
>> year old kid could be developing the next operating system with and
>> versitile in the sense that it could produce ANYTHING.
>>
>> Consider the options now...C, C++, Java, Perl, etc...
>
> Perl?
>Perl?
>HAHAHAHAHAHAHAHA!!
>
>making games in perl :)
I love Perl and use it a lot, but I don't write games IN it - I write
games WITH it. It is a superb language for text processing, and I
often use it for writing small support utilities, sometimes producing
in minutes something that would take a couple of hours in C or C++.
I also use it as an intermediate language, for example I define my own
language dedicated to a particular task, then write a translator in
Perl to convert from that language into a data file that can be
interpreted by the C or C++ program. I have done this for a fuzzy
logic system, a finite state machine system and various script
languages. I have found that this technique pays off time and time
again.
To answer the original question:
> What is the easiest AND most versitile programming language out there.
there isn't any, since these two goals are mutually exclusive. If a
language is easy to learn then it has to sacrifice power and
versatility. If a language is versatile then it will be difficult to
learn. C++ is the best general purpose language I know, but it is a
total bitch to learn, since it is so big and complex. I have been
using it for years, but I am still finding out new things about the
language or better ways of doing things. There is also no universal
language that is the best one for _everything_ - since a general
purpose language will be worse at a particular task than a language
that has been tailor made to do that job.
I recommend that anyone serious about programming should learn as many
languages as they can get their hands on, and try to learn as many
different kinds of languages as possible - OO, procedural,
logic-based, functional, list-processing etc. The language(s) you
learn mould the way you think about a problem. If you only ever learn
one language then your mind-set will be very limited and you will miss
solutions that would be obvious to a programmer in a different
language.
No doubt there will be posts in this thread that will argue that
Java/C/C++/VB/Whatever is THE best language and the only one you will
need to learn. I strongly suspect that people who post these do it
because that is the only language they know, and are deeply insecure
about it. Ignore them. The truth is that there is no BEST language,
but some languages are better than others _at_certain_tasks_ and worse
at other tasks. Learn many languages so that you can choose the best
tool for the job at hand.
Dave K [sick to death of all these language wars]
________________________________________________
Communication is only possible between equals.
dave@ <-figure this out, spambots!-> Dave.Kirby@
dkirby. psygnosis.
demon. My opinions are my own, co.uk
co.uk but I'm willing to share.
Actually, here's my semi-serious answer:
1. The best language for my game would be a language that
was specifically designed FOR MY GAME.
2. Nobody has made a language designed specifically for
my game. (Well, I'd be REALLY SURPRISED if they had.)
Therefore the only answer is that I have to make my own "best
language" for my game. Scripting languages are the answer! :)
- Amit
Dave Kirby wrote:
> On Thu, 11 Dec 1997 14:40:51 -0500, Michael Bennett
> <Mic...@TFX-Online.com> wrote:
>
> >P.S. wrote:
> >
> >> Did you ever get sick and tired of all the bullshit that you had to do to
> >> just produce a half decent program. All of the unneeded jargon and constant
> >> repetitous code refering to the same commands? I hate all of that crap.
> >> Tell me. As a question for discussion. What is the easiest AND most
> >> versitile programming language out there. We are talking easy as in your 10
> >> year old kid could be developing the next operating system with and
> >> versitile in the sense that it could produce ANYTHING.
> >>
> >> Consider the options now...C, C++, Java, Perl, etc...
> >
> > Perl?
> >Perl?
> >HAHAHAHAHAHAHAHA!!
> >
> >making games in perl :)
>
> I love Perl and use it a lot, but I don't write games IN it - I write
> games WITH it. It is a superb language for text processing, and I
> often use it for writing small support utilities, sometimes producing
> in minutes something that would take a couple of hours in C or C++.
>
> I also use it as an intermediate language, for example I define my own
> language dedicated to a particular task, then write a translator in
> Perl to convert from that language into a data file that can be
> interpreted by the C or C++ program. I have done this for a fuzzy
> logic system, a finite state machine system and various script
> languages. I have found that this technique pays off time and time
> again.
>
> To answer the original question:
> > What is the easiest AND most versitile programming language out there.
>
(The lower level stuff like opening and reading files would have to be done
in soemthing lower lever)
The program would look something like this:
First, load up all of the files we need. Then, draw the world up on the
screen. After that's done, draw the character. Put all the bad guys where
they go. When the player presses an arrow key, move the character in the
respective direction...
The program goes on. Very Simple. Of course, their would be a lot more to
it.
I think the best language for now depends on the task you want. If your
doing something without much of a need for speed that is pretty much a
dialog based program, I would use Visual Basic. For lower level stuff, like
games, network stuff, etc. I would use C++, and a little bit of assembly
thrown in.
Just More Idle Thoughts
Michael
--
George Petryk, Software engineer and businessman, ame...@total.net
Coder and designer: ask him to design your next RPG !
Keeper of the Eternal Father Homepage:
http://www.love-nest.com/father.htm
Esperanto is an ideal candidate for this; artificial, rigidly structured
and defined and (apparently) easy to learn...
[...]
>You could develop almost any program in a matter of hours
>and have few bugs, easily understand it, and the only requirement to use it
>is you have to know how to write and be able to figure out a keyboard.
>Imagine writing a simple mario (the old 8bit nintendo one) like game in it:
>(The lower level stuff like opening and reading files would have to be done
>in soemthing lower lever)
...which _you_ would still have to program! Games aren't general-purpose
programs; they're defined to perform a highly specific task.
>The program would look something like this:
>First, load up all of the files we need.
*What* files? What's in them? Where did they get that data from? Does it
need to load _all_ of the files? Or just those for the current level?
Contrary to popular belief, computers cannot actually read minds. You'd
have to be anally literal in your description. That's what games
designers and lead programmers are for.
> Then, draw the world up on the
>screen.
Draw the world _how_? Surely the world should be drawn to a viewport,
not the screen itself. Otherwise, how would you handle the possibility
of multitasking?
[...]
>The program goes on. Very Simple. Of course, their would be a lot more to
>it.
Programs written in English would read like an immense legal contract:
_everything_ defined down to the last detail. Pages and pages of
(allegedly) English text would be required to 'define' a game.
As you built up a library of objects written in 'English++', you'd then
find it progressively easier to create more and more complex programs,
but you'll still end up with something looking like a lawyer's wet
dream.
--
Sean Timarco Baggaley
Please _DON'T_ use Reply-To!
For my real Email address, please substitute the Hotmail domain with this one:
'solarflair.demon.co.uk'
Ta.
>Did you ever get sick and tired of all the bullshit that you had to do to
>just produce a half decent program. All of the unneeded jargon and constant
>repetitous code refering to the same commands? I hate all of that crap.
>Tell me. As a question for discussion. What is the easiest AND most
>versitile programming language out there. We are talking easy as in your 10
>year old kid could be developing the next operating system with and
>versitile in the sense that it could produce ANYTHING.
>
>Consider the options now...C, C++, Java, Perl, etc...
"the best programming language" is a myth.
It all depends on your needs and what kind of person you are...
for best support i would suggest C++
______________________________________________________________________
EMail: s...@vr.xs4all.nospam.nl
(remove nospam before sending me a mail)
P.S. wrote:
> Did you ever get sick and tired of all the bullshit that you had to do to
> just produce a half decent program. All of the unneeded jargon and constant
> repetitous code refering to the same commands? I hate all of that crap.
> Tell me. As a question for discussion. What is the easiest AND most
> versitile programming language out there. We are talking easy as in your 10
> year old kid could be developing the next operating system with and
> versitile in the sense that it could produce ANYTHING.
>
> Consider the options now...C, C++, Java, Perl, etc...
Yikes, I can't believe I'm actually replying to this post! (^_^)
First of all, do you program? Do you program professionally? From your
statements, I get the feeling that if you do program, you don't program a lot
(no offence intended.)
Programming cannot be done in English. Languages meant for human to human
communication have far too much ambiguity and require far too much assumption
and prior knowledge that it is impractical to define programs with them. When
working out algorithms, I often have to write in pseudo code rather than
English, because the algorithm can be described much more simply and
straightforward in pseudo code than in English.
If you program a lot, then languages like C and C++ are very easy to read (as
long as the code is commented). The syntax of C(++) is very straightfoward and
logical. Easy to learn too if you spend some time with it.
I think what you are looking for are really high level CASE tools. You want to
create a game with "Click & Play" or the like. Also, the fact that 10 year
olds don't write operating systems has nothing to do with the programming
language; it has to do with the fact that operating systems and applications
also require the programmer to figure out a lot of concepts that are completely
separate from the programming language. A "simpler language" wouldn't do
anything to negate the need for this other level of thinking.
So I'd have to answer that I'm perfectly content with C++.
Michael Duffy
mdu...@ionet.net
Wouldn't work. What *everyone* who suggests that fails to take into
account is that syntax isn't the problem - it's the algorithms that take
the understanding. The only thing excessively verbose languages
(COBOL) achieve is the fear and loathing of programmers.
[...]
>If they could get some decent speed it would be the best all around
>language. You could develop almost any program in a matter of hours
>and have few bugs, easily understand it, and the only requirement to
>use it is you have to know how to write and be able to figure out a
>keyboard. Imagine writing a simple mario (the old 8bit nintendo one)
>like game in it:
Such naivete.
I'll admit that in a few (dozen) years, games are likely to be customisable
using natural languages, but the actual development is very unlikely to be
- natural languages are too verbose and imprecise to be of any use.
[...]
>First, load up all of the files we need. Then, draw the world up on the
>screen. After that's done, draw the character. Put all the bad guys where
>they go. When the player presses an arrow key, move the character in the
>respective direction...
And how does that describe Mario? It looks like Sonic to me. Or maybe
Zelda. No, it's Street Fighter 2, isn't it? Don't tell me. Umm. Gauntlet?
Ghouls & Ghosts?
>The program goes on. Very Simple.
And completely unworkable.
>Of course, their would be a lot more to it.
Yes. Think "20000 page contract in purest legalese".
---
Russ
Sander v.R. wrote:
> On 11 Dec 1997 19:29:02 GMT, "P.S." <paro...@erols.com> wrote:
>
> >Did you ever get sick and tired of all the bullshit that you had to do to
> >just produce a half decent program. All of the unneeded jargon and constant
> >repetitous code refering to the same commands? I hate all of that crap.
> >Tell me. As a question for discussion. What is the easiest AND most
> >versitile programming language out there. We are talking easy as in your 10
> >year old kid could be developing the next operating system with and
> >versitile in the sense that it could produce ANYTHING.
> >
> >Consider the options now...C, C++, Java, Perl, etc...
>
> "the best programming language" is a myth.
> It all depends on your needs and what kind of person you are...
> for best support i would suggest C++
Right On Brother!
Michael
Michael Duffy wrote:
> P.S. wrote:
>
> > Did you ever get sick and tired of all the bullshit that you had to do to
> > just produce a half decent program. All of the unneeded jargon and constant
> > repetitous code refering to the same commands? I hate all of that crap.
> > Tell me. As a question for discussion. What is the easiest AND most
> > versitile programming language out there. We are talking easy as in your 10
> > year old kid could be developing the next operating system with and
> > versitile in the sense that it could produce ANYTHING.
> >
> > Consider the options now...C, C++, Java, Perl, etc...
>
> Yikes, I can't believe I'm actually replying to this post! (^_^)
>
> First of all, do you program? Do you program professionally? From your
> statements, I get the feeling that if you do program, you don't program a lot
> (no offence intended.)
>
> Programming cannot be done in English. Languages meant for human to human
> communication have far too much ambiguity and require far too much assumption
> and prior knowledge that it is impractical to define programs with them. When
> working out algorithms, I often have to write in pseudo code rather than
> English, because the algorithm can be described much more simply and
> straightforward in pseudo code than in English.
>
> If you program a lot, then languages like C and C++ are very easy to read (as
> long as the code is commented). The syntax of C(++) is very straightfoward and
> logical. Easy to learn too if you spend some time with it.
>
> I think what you are looking for are really high level CASE tools. You want to
> create a game with "Click & Play" or the like. Also, the fact that 10 year
> olds don't write operating systems has nothing to do with the programming
> language; it has to do with the fact that operating systems and applications
> also require the programmer to figure out a lot of concepts that are completely
> separate from the programming language. A "simpler language" wouldn't do
> anything to negate the need for this other level of thinking.
>
> So I'd have to answer that I'm perfectly content with C++.
>
Ok, when the guy was talking about the English language, he was speaking
idealistically, he did not mean actually do it. One day like 500 years from now
after progressing to like C++++++++++++ we will have super ass star trek computers
that can interpret what we say and remove ambiguity by asking the programmer.
However we could also have nural links straight to the computer.......
Besides that future bull sh1t it is impractical and I too am content with C++ I
just wanted to point out to you the idealism in that guys post.
Michael
--
"Wookie Strength BABY, Wookie Strength"
>Esperanto is an ideal candidate for this; artificial, rigidly structured
>and defined and (apparently) easy to learn...
Beware of people who speak Esperanto natively.
- Mauler
Leave Harry Harrison out of this! :)
--
Sean Timarco Baggaley
Please _DON'T_ use Reply-To!
For my real Email address, please substitute the Hotmail domain with this one:
'solarflair.demon.co.uk'
E&OE
There are perhaps as many a thousand people who speak esperanto as
a
native language (or more precisely as _one_ of their mother
tongues),
and Harry, although I'm told he speaks fairly good Esperanto, is
not one
of them. You can find links to the homepages of half a dozen or
so at
the "Ret-klubo" website at
<http://www.geocities.com/EnchantedForest/2755/>. Try Michel
Pilger's,
since it's multilingual... unless you already understand
Esperanto!
-------------------==== Posted via Deja News ====-----------------------
http://www.dejanews.com/ Search, Read, Post to Usenet
English would actually make a very bad programming language. Traditional
programming language syntax allows you to express forms that are not easily
represent by words. To make programming languages English would be akin to
getting rid of those stupid math equations in favor of some english
notation.
"area of circle the same as area of a big screen tv, solve for radius."
JeffP
If you can't write a game in Atari 2600 Basic, you're a Girly Man.
I think that a combination of both english and some computer language would
be excellent. It would be like a really high level language.
for example:
set graphics mode to 320x200x256
blit file "picture.pcx" to screen
if up is pressed increase brightness
if down is pressed decrease brightness
I think that this would be excellent for people that find it hard to learn
programming languages.
Rainer De Temple(r...@cnl.com.au)
> I think that a combination of both english and some computer language would
>be excellent. It would be like a really high level language.
>for example:
>
>set graphics mode to 320x200x256
>blit file "picture.pcx" to screen
>if up is pressed increase brightness
>if down is pressed decrease brightness
>
>I think that this would be excellent for people that find it hard to learn
>programming languages.
Those are the comments..
If you have trouble with the language, write out the program in english
first, then just translate the english language comments to whatever
language you are writing in. Works really well..
Wilbur
Rauber wrote:
> > > > My vote (please don't laugh to hard) would be a human language. I am
> > going
> > > > to say English because that's what I know best, but realistically the
> > first
> > > > human language to be programmed in would be something much easier to
> > learn.
> >
> > English would actually make a very bad programming language. Traditional
> > programming language syntax allows you to express forms that are not easily
> > represent by words. To make programming languages English would be akin to
> > getting rid of those stupid math equations in favor of some english
> > notation.
> >
> > "area of circle the same as area of a big screen tv, solve for radius."
> >
>
> I think that a combination of both english and some computer language would
> be excellent. It would be like a really high level language.
> for example:
>
> set graphics mode to 320x200x256
> blit file "picture.pcx" to screen
> if up is pressed increase brightness
> if down is pressed decrease brightness
To the tune of a certain Christmas song...
"It's beginning to look a lot like COBOL..."
>
>
> I think that this would be excellent for people that find it hard to learn
> programming languages.
>
> Rainer De Temple(r...@cnl.com.au)
>I think that this would be excellent for people that find it hard to learn
>programming languages.
Hardly.
The biggest problem most newbies have with programming languages is
understanding exactly how fuck of wit a computer truly is.
Concepts like 'graphics mode' are pretty arcane when you sit down and
think about it from a newcomer's perspective. As is 'blit'.
Also, you can't use 'up' or 'down' like that -- the computer has to be
told how to map those two states. (Consider how flight sims work for a
reason why!)
OK, it's not "natural" but it's not
xor edx,edx
mov dl,[r]
mov cl,[BYTE pixel_format.redAdjust]
shr dl,cl
and dl,[BYTE pixel_format.redMask]
mov cl,[BYTE pixel_format.redPos]
shl edx,cl
either :)
--
--> http://www.cam.org/~tudor <--
That's *way* inefficient. Why not use:
xor edx,edx
mov dl, [r]
mov eax,[RedTable + edx*4]
(Or an optimised version, thereof)
:)
---
Russ
PS - At the very least, just do 1 shift, not 2...
Well, the C you posted was a fairly close translation of the 'english' code
version. IMHO sensible function names and/or comments are easier to
read than pseudo-code, anyway.
>from the Scitech MGL sources...
It's code to adjust 24-bit colours (r,g,b) to a packed-pixel format.
For RGB555, it would take r, shift it right 3 (=8-5), mask it (unneeded)
and shift left 10 (=5+5).
At the very least, it could be done with 2 shifts (the 1st clips the low n
bits, the second shifts it into place) or a shift and an AND (the and
clips the low bits, the shift moves them into place). Or you can use a
trinity of 256 entry tables with the shifting/masking already done.
Obviously, the best thing to do is make sure this is done as a
*precalculation* - the pixel format is unlikely to change between
frames :)
BTW - If that's the type of ASM that SciTech are using, I'll stick with C,
thank you very much - VC5 does a *much* better job than that.
<Suddenly realisation dawns as to why MGL is free...>
---
Russ
For all you and I know, that code _is_ the code to build
such a table, and worrying about optimizing it further
is silly. Perhaps it was a reasonable way to compute
it from the original constants, without creating new
intermediate masks?
But then not much reason for that code to be in ASM. Hmm.
Sean Barrett
I considered that. Two problems:
i) Why is 'r' a variable, not a simple loop counter (ecx - not used)?
ii) Why is it in assembly if it's setup code? What's wrong with a
*little* portability?
>Perhaps it was a reasonable way to compute
>it from the original constants, without creating new
>intermediate masks?
Again true, but it doesn't explain:
* The non-interleaving of the r code with the (presumed) g and b
code.
* Why it's doing redundant ops (shifting out low bits then masking
and shifting back).
>But then not much reason for that code to be in ASM. Hmm.
Yup. That logic is pretty damn inescapable.
If it's setup code, it should never have been done in asm.
If it's internal code, it should be a damn sight better (by hand
or compiler).
As far as I can tell, it's just a perfect example of why pure asm
projects suck so badly.
---
Russ
Rant: Why is it that people seem to think that just by using asm they
get fast code? I mean, WTF do they think compiler writers do for a
living?
---
Russ
Yeah, I'm glad people like you *feel* this way. First hand examination
of compiler code is something I'm more happy with, personally, but that's
just me.
--
Paul Hsieh
q...@chromatic.com
>Rant: Why is it that people seem to think that just by using asm they
>get fast code? I mean, WTF do they think compiler writers do for a
>living?
I'm glad I'm not the only one that feels this way. =)
----------
Burnnn
>bur...@netcom.ca says...
>> <ru...@algorithm.demon.co.uk> wrote:
>> >Rant: Why is it that people seem to think that just by using asm they
>> >get fast code? I mean, WTF do they think compiler writers do for a
>> >living?
>>
>> I'm glad I'm not the only one that feels this way. =)
>
>Yeah, I'm glad people like you *feel* this way. First hand examination
>of compiler code is something I'm more happy with, personally, but that's
>just me.
Don't get agnostic on us here Paul. Relax. Have some tea. We were
not blindly saying to toss ASM out the window. The problem we have is
with people who _automatically_ think ASM will be faster than a
high-level language like C. Some people believe that the compiler
can't produce competent code _at any time_. The usual argument is, "I
can hand-code better ASM blah ...". Well, the compiler *is* spewing
out "hand-coded" ASM, in a sense. Someone had to write the compiler's
output code. Obviously, once you include complex structures, etc.,
"hand-coded" ASM can very often be faster in execution. The compiler
can't forsee every possible happenstance, of course.
Read Russ's clip above and try to understand what we're getting at.
( You know, I just *knew* someone was going to misinterpret this. )
=o)
----------
Burnnn
>>I think that this would be excellent for people that find it hard to learn
>>programming languages.
>Hardly.
>The biggest problem most newbies have with programming languages is
>understanding exactly how fuck of wit a computer truly is.
I thought the purpose of a high-level language was to simplify things
to a closer, human-level, English-like language. I consider IF-THEN statements
pretty english-like. At least in the BASIC language.
DJGPPXYZ wrote in message <19971225113...@ladder02.news.aol.com>...
Yes. Does it help? Does using BASIC make a quicksort blindingly
obvious? How about RSA encryption? MPEG compression?
The difficulties are not the language (although, as you say, BASIC
is a bit clearer to learn on), but in the algorithms, data structures
and the non-obvious way in which computers tend to do things.
---
Russ
HLLs make a program easier to read, certainly. But the end result is
still a computer program. Therefore, it still boils down to an
astonishingly anal list of detailed instructions. All HLLs do is hide
some of that anality(?) under a few extra layers of APIs, but the
complexity is still there. And even HLLs expect a lot more detail from
the programmer than the average Joe would expect.
"Update screen"
ERROR: Which screen?
(Even PCs can be made to run multiple monitors. Separate colour mono
display outputs are catered for by most PCs -- and often used for
debugging.)
Something like: "Update screen 1" would be required. You could default
it to 'screen 1', but what about newer OSes -- like Win98 and MacOS --
which have support for multiple *colour* displays? How do you know which
display to default to?
*
Ultimately, all programs spend most of their time performing number-
crunching in some form or another. And adding two numbers together is a
function that looks much the same in either x86 assembly, or COBOL.