does anyone know a good basic language

Started by
50 comments, last by Basic 18 years, 3 months ago
Quote:Original post by Anonymous Poster
Any language will teach you basic programming and later one appropriate to the problem space can be selected.

Any language can teach you basic programming, but that doesn't mean they all do so equally well. I think we can all agree that Brainfuck, for instance, would be a bad choice for learning good programming practices. Once that's out of the way, it becomes clear that you've done a rather bad job of actually countering jfclavette point.

All the information available for C++ is actually a mark against it as a first language: the number of bad, outdated examples are simply too numerous. A begining programmer doesn't know enough to avoid the misinformation.

CM
Advertisement
Quote:All the information available for C++ is actually a mark against it as a first language: the number of bad, outdated examples are simply too numerous. A begining programmer doesn't know enough to avoid the misinformation.

CM

I don't think the places beginners get their information from relates to the effectiveness of a language at being good for beginners. Anybody can download a bad Python or FreeBASIC tutorial, for example. Anybody that surfs the net (should) know to take things with a grain of salt, depending on the source of the information. As usual, the best method of gaining accurate information is from buying (or borrowing from the library) up-to-date reference material from a book store. I would assume that's why GameDev has a section devoted to recommended books for beginners.
:stylin: "Make games, not war.""...if you're doing this to learn then just study a modern C++ compiler's implementation." -snk_kid
Others have done a pretty good job of covering me up. But here goes.

Quote:Original post by Anonymous Poster
You can write C style programs in C++ (and use the C++ OO stuff when nessessary). Any language will teach you basic programming and later one appropriate to the problem space can be selected.


I didn't recommend C either. C and C++ are both AWFUL begginner languages. Period.

Quote:BTW, were you bitten by a C++ as a child to 'hate' it so????


I wasn't !!! I did witness a lot of people that did, and that hated programming as a result, because they were introduced to C/C++ first. I mean, seriously, there's no fun in doing bounds checking manually.

Quote:Please name a language that 'is ideal'.


An ideal language:

1) Does not allow you to trash your memory when it is clearly not your intent.
2) Does not force you to manage your own memory when you don't want to and there are no reason to do so.
3) Does not make absolutely stupid rules that make no sense just for the fun of it. ("Members are constructed in the order they appear in the class declaration, not the order they appear in the initializer list.")

I have an idea, let's convert an integer to a string !

int x = 5string myString = x.toString() 


Right ? Wrong. Bad C++ programmer no cookie. You should do it this way:

  int x = 5  string myString  stringstream sstr;  sstr << x;  myString = sstr.str();


Not that bad. Geez...


Quote:
Please name a 'good' language (whatever that means, I suppose it should be something more versatile than C/C++ is...)


I don't give a damn about versatility. Application and game developpers do NOT need versatility. Yes yes, C/C++ are awesome, you can write drivers and OSes with them (Not that you can't write an OS in C#). A good language for building applications is a language that lets you quickly, simply and neatly write business/game logic without worrying too much about the metal.

Quote:
Please name a language that if you switch to it WILL "make you a better game programmer, or programmer at all for that matter."


A case could be made for LISP or Scheme, since very few programmers understand the functional paradigm. This is sad since, altough not really suited for application development either, it develops your ability to think "out of the box" of procedural and OO languages. However, my point wasn't that a language can make you a better programmer. My point was that "I'll learn C#, Python or Java in hope that one day I'll be finally able to reach the oh-so-awesome C++" is a bunch of crap.

Quote:Lets see you make an octupus with any other language ( I suggest Molluska99 ).


The only other language that I see as garbled as C++ (excluding so-called 'esoteric programming languages' like the aforementionned brainfuck) is Managed C++. Oh, and x86 assembly. Man, does x86 assembly suck.

Quote:
Let us know when the poll results are in.


No need for the poll results really. Go to "My announcements and count the C++ projects.

[Edited by - jfclavette on December 17, 2005 11:29:07 PM]
I teleported home one night; With Ron and Sid and Meg; Ron stole Meggie's heart away; And I got Sydney's leg. <> I'm blogging, emo style
Yeah, don't listen to those fanboys. I think you should start programming for dos. You should pick a languge like BASIC or PASCAL then move on to Windows programming.

I used to think ASM sucks, but then I did various things with asm (like debugging) and found out that it could be use for many differnt things such as encyption. I also learn how the computer memory works! knowing that,it made pointers and other things in C++ easier to handle and understand.
==========================blog: http://piccahoe.phase1media.comCompany:http://phase1media.com
Quote:Original post by piccahoe
Yeah, don't listen to those fanboys. I think you should start programming for dos. You should pick a languge like BASIC or PASCAL then move on to Windows programming.

Why?

Quote:
I used to think ASM sucks, but then I did various things with asm (like debugging) and found out that it could be use for many differnt things such as encyption.


Assembly languages are Turing complete (like most other languages), there is no reason you wouldn't be able to do those things. You usually don't determine whether a language "sucks" or not based on the applications you could possibly make with it, since most languages are Turing complete.
i have already tried learning c++ which for me it gets confusing at times so if anyone knows any good tutorials or books for beginers that would help
Quote:Original post by Roboguy
Quote:Original post by Anonymous Poster
Please name a language that 'is ideal'.

He never did say that any language was ideal.

Quote:
Please name a 'good' language (whatever that means, I suppose it should be something more versatile than C/C++ is...)

He mentioned a few languages that he thought were good in his post.

Quote:
Please name a language that if you switch to it WILL "make you a better game programmer, or programmer at all for that matter."

Again, languages that he think will do this were probably the ones he mentioned in his post.

Quote:
Lets see you make an octupus with any other language ( I suggest Molluska99 ).

I have no idea what this means. I assume it's some reference to his comment about C++ being like an octupus, but it doesn't make any sense to me.

Anyway, I happen to agree with him. There are several languages I would recommend above C++ for most uses (to name a few in no particular order: Scheme, Python, Common Lisp, Ocaml and Haskell).

Now, I have a question to ask you: What languages have you used significantly, other than C++?



Basic
Assembly
Fortran
Pascal
Prolog
Lisp
Sympl
Cybil
Java


As to my comments, none of his criteria (with which he attempts to put down C++) are any more meaningful for any other language that you can name.

I found either Blitzmax or Purebasic good basic compilers.
Quote:Original post by Anonymous Poster
As to my comments, none of his criteria (with which he attempts to put down C++) are any more meaningful for any other language that you can name.


I think he was mainly pointing out that C++ is probably not the best language for most things that people use it for (like learning programming with).
Quote:Original post by jfclavette
Others have done a pretty good job of covering me up. But here goes.

Quote:Original post by Anonymous Poster
You can write C style programs in C++ (and use the C++ OO stuff when nessessary). Any language will teach you basic programming and later one appropriate to the problem space can be selected.


I didn't recommend C either. C and C++ are both AWFUL begginner languages. Period.

Quote:BTW, were you bitten by a C++ as a child to 'hate' it so????


I wasn't !!! I did witness a lot of people that did, and that hated programming as a result, because they were introduced to C/C++ first. I mean, seriously, there's no fun in doing bounds checking manually.

Quote:Please name a language that 'is ideal'.


An ideal language:

1) Does not allow you to trash your memory when it is clearly not your intent.
2) Does not force you to manage your own memory when you don't want to and there are no reason to do so.
3) Does not make absolutely stupid rules that make no sense just for the fun of it. ("Members are constructed in the order they appear in the class declaration, not the order they appear in the initializer list.")

I have an idea, let's convert an integer to a string !


int x = 5
string myString = x.toString()


Right ? Wrong. Bad C++ programmer no cookie. You should do it this way:


int x = 5
string myString
stringstream sstr;
sstr << x;
myString = sstr.str();


Not that bad. Geez...


Quote:
Please name a 'good' language (whatever that means, I suppose it should be something more versatile than C/C++ is...)


I don't give a damn about versatility. Application and game developpers do NOT need versatility. Yes yes, C/C++ are awesome, you can write drivers and OSes with them (Not that you can't write an OS in C#). A good language for building applications is a language that lets you quickly, simply and neatly write business/game logic without worrying too much about the metal.

Quote:
Please name a language that if you switch to it WILL "make you a better game programmer, or programmer at all for that matter."


A case could be made for LISP or Scheme, since very few programmers understand the functional paradigm. This is sad since, altough not really suited for application development either, it develops your ability to think "out of the box" of procedural and OO languages. However, my point wasn't that a language can make you a better programmer. My point was that "I'll learn C#, Python or Java in hope that one day I'll be finally able to reach the oh-so-awesome C++" is a bunch of crap.

Quote:Lets see you make an octupus with any other language ( I suggest Molluska99 ).


The only other language that I see as garbled as C++ (excluding so-called 'esoteric programming languages' like the aforementionned brainfuck) is Managed C++. Oh, and x86 assembly. Man, does x86 assembly suck.

Quote:
Let us know when the poll results are in.


No need for the poll results really. Go to "My announcements and count the C++ projects.



You dont care about versatility ?? So you propose learning a language just to have to discard it .... Maybe your experience is gruntwork scripting, but
there are more complex aspects to 'game programming' than that.

You cite poorly implimentated code in a language as evidence of its 'evil nature', but crappy byzantine code can be written in any language and you can write very clear code in C/C++ if you know how.

As I said before you can write C++ programs using C style and stay away from alot of the OO complexity much of the time.

You talk of 'bounds checking' as if its something you can just forget about.
The programmer still has to handle cases like that, one way or another. There is no magic bullet that makes it go away.


You still havent mentioned the magic language that turns a non-programmer into a programmer (this WAS something you were complaining C++ is not, as if any out there actually could.....)




Depending on why the person is learning programming, there are different paths:

C++/C if you want to do low level stuff (like writing a game engine or libraries)...

One of the game engine imbedded languages like BlitzBasic if you want to get a complete game running fast and dont want to deal with low level stuff.

If you have an engine that you want to do MODs and it uses one of the scripting languages, then you are stuck learning whatever that language is.

If you want to learn very basic programming -- BASIC is very straight forward.

This topic is closed to new replies.

Advertisement