I program in the following languages:
C++, Scheme, Visual Basic .net
Here is why:
C++ produces fast-working executables that I can transfer from computer to computer. I especially use C++ to make command-line executables that use arguments or switches similar to the following form:
programName.exe -a <firstArg> -b <nextArg> ...etc
Scheme is good for intense mathematical calculations (especially when intermediately calculated values get very large) such as power series, integrals, and combinatorics. I know you can do these things in almost any language, but Scheme is higher level and handles numbers better with better precision of floats. It is also easier to do recursion in Scheme. You can do a Reimann sum to find the probability on a student's t-distribution or on the F-distribution easily by using tail-recursion in this language.
Visual Basic is the most straight-forward way I've seen to create Windows GUI applications. That alone makes me use it.
Furthermore, I don't just program in any language. I pick a new language only when I see a REAL GOOD REASON to do so. I hear a lot of people (not necessarily on this forum) who want to learn a language every week, and I disagree. You can never learn enough within one language.
Originally Posted by Szat
I programmed with Alice last semester for my Intro to Programming Logic course. Alice drove me crazy. I would have much rather used something else. At least I got a B in the class. R.I.P. Randy Pausch
Is Alice that language that demonstrates OOP to the programmer? I can't remember, but if so, I believe it is really just a learning tool. I had a professor who showed us Alice. He told us to try it ONLY to better understand OOP, and not to actually write applications in. I might be wrong, but I'm pretty sure you're talking about the same Alice I'm referring to.