what programming language should I learn

I’m in a computer science class, “programming languages”.

a big part of is going to be independently learning a language and writeing programs in it. thats not so bad, nothing hard, I know 10-12 diffrent languages at this time…

but what SHOULD I pick? I can’t decide. part of me wants the easy A that picking Perl would be (since I already know it, and the only requirement is that you never took a class on it). part of me wants to do C# because I might end up useing that in the future, but I realize since its just self study, I can self study it anytime, and not risk a grade on it.

or mabey I should just do lisp or ada or something just to be diffrent and do something that not everyone else in class will be doing. (the prof seemed to be BEGGING not to get another class full of people learning java… although java… I taught myself enough to use java some once… really hated it, mabey I should attempt again? derr)

basicly I want a language that is at least mildly useable (something I could use again someday so I am not wasteing my time TOO bad) but something thats going to be easy enough that I’m not makeing more work for myself than I need (don’t want to do it in machine language or anything, might be valueable to have the skill to do it, but would put the length of time to do any sort of homework through the roof) something of the difficulty level of perl would be good. (derr, perl would be good, easy enough to write a program, easy enough to learn the basics, lots of interesting features to write reports about… ect… just feel bad doing that because I already know alot about it and the spirit of the class is to learn one from scratch)

How about Python? It’s similar to Perl, and if you don’t already know it there shouldn’t be too much of a learning curve.

I’m a big fan of Lisp, but I have to admit that it’s current commercial value is just about NIL. However you do get a feel for language features that you simply won’t encounter anywhere else.

Given that half of learning a new programming language is reasoning by analogy to something you’ve seen before, it wouldn’t hurt to encounter something dramatically different than a conventional procedural language.

Prolog might be a good choice, as it’s not similar to Lisp or C. There are a billion object-oriented languages with minor variations out there, and you could choose one of them.

Or you could do brainf*ck, one of my favorite languages.

If you’re worried about learning skills you can use at a later date, it really doesn’t matter (practically speaking) what you pick. Once you learn one langauage, it takes about 20 minutes to be able to use another one. Maybe a week or so to be ‘good’ at it. And then another month or so to be a total nerd with it :slight_smile:

Ruby (Ruby Programming Language) has a pretty enthusiastic fan base, and I’ve heard some good things about it. My impression (I haven’t used it very much) is that it’s like an object-oriented perl, minus the hordes of perl zealots.

Python is also pretty neat. The syntactically-significant whitespace is an interesting feature.

Although, to be honest, I think everybody should know C. You could be really hardcore and use m68k asm (or be REALLY hardcore and use i386 asm :slight_smile: ), although it would probably take you a couple years to complete an assignment.

I seem to have picked python, it seemed reasonably interesting and worth learning. lisp turns out to be off limits in the class, (since we are studying it as well)

and of course I know C, how could I not!? that was a major problem with this assinement, I already have covered (in a class or on my own) most of the important languages, so choices were sort of limited to the off the wall languages, but python seems a good choice, I downloaded it and installed it, as an attempt to try a few languages, but meh, its good enough, and haveing a one line “hello world” program is nice on the ‘doing homework’ side