• Advertisement
Sign in to follow this  

A Second Programming Language

This topic is 4791 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I am interested in learning a different language while I am learning OpenGL in C++ because I am getting rather bored with it, and I want to be able to work on a few things in case I get bored. So I have a list of ones I want to learn, but cannot decide which. Also, no fighting which language is better, I just want your opinion, and no feedback on other's opinions. C# VB.NET Auto-It(lol yes, always an option) Java Scripting Language for C++(make a suggestion)

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
Learning another language as you learn c++ will be tricky if you want to learn c++ to any decent level. It takes years to truely master.

Share this post


Link to post
Share on other sites
C# if you want something similar and directly usable.

Erlang, Common Lisp or Eiffel if you want something different.

[Edited by - Trap on January 8, 2005 6:38:51 PM]

Share this post


Link to post
Share on other sites
Just to clarify. Opengl is an API not a language, and the api is C, not C++.

Not trying to be a d*** or anything.

Seriously though, after your "competent" with C/C++ I'd look into x86 assembler just so you know how code generation works. If you find x86 hard to pick up trasition from 68k it's a motorolla assember but very basic.

After that I'd dive into a scripting language. Either lua or python imo.

From there all other languages are cake to pick up.

[edit]
I'd learn win32 a bit also. And pick up something for rad dev. Borland Builder or C#.
[/edit]

Share this post


Link to post
Share on other sites
c# is fun and wery much alike C++, I would deffinitly recomend it

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
java is is similar to c++. If you want to use gl in it take a look at lwjgl.org .

Share this post


Link to post
Share on other sites
Of those choices, try VB.NET or Java.

I stay away from C# purely because it's yet another of microsoft's examples of "Hey look, this thing is realy good and quite popular, lets make something just like it, but try and make it better and call it a standard, so that virtually everybody uses it, and we can extract lots of money out of them!"

I'm having one of those anti-MS days. It's called a weekday, or sometimes a weekend.

Share this post


Link to post
Share on other sites
brainf*ck. Or if you don't want to go crazy programming anything simpler than a program that prints 1-10, check out functional languages. They are very different from what you are used to. Personally I recommend OCaml as it's probably the easiest to transition to from C/C++ (since it has imperitive features). Other notable functional languages would be Lisp, Scheme and Haskell.

If you are not familiar with functional languages, don't expect an easy transition from imperitive (C/C++) to functional. They are completely different paradigms. Pure functional languages don't have variables or loops for example. They rely on functions (big surprise there) and recursion.

Share this post


Link to post
Share on other sites
I suggest Python. It is easy to pick up, very flexible, comes with a large standard library, is easy to extend with modules written in C++, and only slightly more difficult to embed in a C++ program. And yet, it is different enough from C++ that it will allow you to actually learn new things (unlike, say, Java or C#, which are much closer to C++ in their operating principles).

Share this post


Link to post
Share on other sites
Don't poo-poo on C# so quickly. Yes, it's another one of MS's steps toward world domination, but have you actually used it? It's like Java on steriods! Lots of cool features Java doesn't have:

- properties (which are getters and setters which require half the code)
- events and delegates (a superior approach to event handling)
- indexers and intelligent operator overloading (overloading + and = overloads += correspondingly)
- 'params' parameter passing

It also comes packaged with .NET and has a really easy-to-use Wysiwyg editor and JIT compiler (I know Java has JIT compilers for Sun, but I could never find one for Windows t.t)

Share this post


Link to post
Share on other sites
why not prolog? i guess a glance into more exotic languages aside the "C++ class" ones will do every programmer good.

Share this post


Link to post
Share on other sites
learn x86 assembler if you want a challenge and you want to know what going on under the hood. learn c# or java if you want to learn a language thats flexible and fairly fast to build with. learn VB if you want to make alot of tools or hardcore user interfaces. learn XML and how to incorporate it into your programs(pretty good at letting you change alot of a game without having to recompile).

Share this post


Link to post
Share on other sites
Quote:
Original post by iMalc
I stay away from C# purely because it's yet another of microsoft's examples of "Hey look, this thing is realy good and quite popular, lets make something just like it, but try and make it better and call it a standard, so that virtually everybody uses it, and we can extract lots of money out of them!"
It's almost like you know what you're talking about.

Not to be mean, but at least be informed before you spew forth anti-Microsoft rhetoric.

I'm sure that Microsoft is making billions off of the Mono project.

Anyway, back on topic, what do you want to do with this second language? I could recommend anyone of them if I had an idea of the specific domain you're interested in (even if it's just to learn programming in general).

To simply ask us to recommend any given one(s) with no domain won't help you at all.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quote:
Original post by Raymond_Porter420
learn x86 assembler if you want a challenge and you want to know what going on under the hood. learn c# or java if you want to learn a language thats flexible and fairly fast to build with. learn VB if you want to make alot of tools or hardcore user interfaces. learn XML and how to incorporate it into your programs(pretty good at letting you change alot of a game without having to recompile).


why not learn LUA, AngelScript, or Python (all C based) or just Lisp?
they serve the same purpose and function as XML and are more flexible. (right?)

Share this post


Link to post
Share on other sites
Id take something that will broaden your possiblities in applications the most. Therefore it should give you posibilities c++doesnt or only sparesly give you.
My suggestion would be java. Its similar to the c++ syntax. Its got loads of libraries for quick programming, its cross platform and its great for web applications. Plus its one of those languages that are always very good on a cv.

Share this post


Link to post
Share on other sites
Quote:
Original post by YoshiN
brainf*ck.


I agree. I'm thinking about learning it just for the comedy value.

Share this post


Link to post
Share on other sites
I recommend Java since the syntax is similiar to C++ so it shouldn't be hard to pick up and will give you a sense of OO design which is central to Java.

Share this post


Link to post
Share on other sites
Quote:
Original post by ukdeveloper
Quote:
Original post by YoshiN
brainf*ck.


I agree. I'm thinking about learning it just for the comedy value.


Brain**** is really simple to learn, really. It can be done in an afternoon (even if you decide to write your own interpreter)

The real challenge is doing anything useful with it.

Share this post


Link to post
Share on other sites
From an operational standpoint, you will likely want to invest some time in learning a scripting language to help you with your day to day tasks. To help you write tests for your C++ projects, help you write build scripts and such. Perl and Python are great for this. In my experience, Perl is easier to learn and make useful than Python, but it won't help you with your discipline. Perl programs tend to get quite ugly quite quickly and many people criticize it as being "write once, read never". I agree with that comment.

I believe one purpose of Python is to address the messiness of Perl but trying not to sacrifice the usefulness. Judging from it's popularity, it may do that quite well.

Another language worth considering is Scheme. With some implementations you can get some scripts done reasonably easily (e.g. Bigloo), but not nearly as easily as Perl. What it does offer is a new way of thinking about problems which C++ doesn't really afford.

I'm also interested in Vault.

[Edited by - flangazor on January 9, 2005 12:06:36 PM]

Share this post


Link to post
Share on other sites
Quote:
Original post by flangazor
I'm also interested in Vault.


No freaking way... C? with closures? and compile-time checked rules? I'm going to have to keep my eye on this one.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement