Sign in to follow this  

Favorite Programming Language?

This topic is 3649 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

What is your favorite programming language? Choose one, and only one. Also, give a reason why you like it. Optionally, what is your least favorite programming language? Choose one, give a reason. Don't post your favorite markup language (XML, HTML, etc.) or your favorite scripting language (javascript, PHP, etc.). Some use the term "compiled programming language." Some common programming languages (you don't have to choose one of these): - Ada - Assembly - BASIC - C - C++ - Java - Lisp - Pascal I know it's a hard choice to pick just one, but please try.

Share this post


Link to post
Share on other sites
At the moment C#. It provides the least impediments to getting the stuff I need to get done done of the languages I know.


This of course will change as my average projects change or as I become less ignorant.

Share this post


Link to post
Share on other sites
Quote:
Original post by afarnen
Don't post your favorite markup language (XML, HTML, etc.) or your favorite scripting language (javascript, PHP, etc.). Some use the term "compiled programming language."
PHP, and some variants of javascript, are compiled. Why make an artificial distinction between so-called "scripting languages" and "programming languages"?

Share this post


Link to post
Share on other sites
Python, because I like writing in an imperative style, with the ability to write some things in functional style. Also, it's nice having good facilities for reflection and meta-programming.

And compared to other languages that do the same thing, Python has the cleanest design.

Share this post


Link to post
Share on other sites
I think the question is fundemantaly flawed. Some languages I would say were my favourite for a particular set of tasks, but most of them are extremely poorly suited to other tasks.

In general, I prefer a hybrid approach of C++ and Python, glued together with boost::python. This allows me to write the graphics/physics/engine code in C++, which saves wrapping API's into Python, and allows highly optimised code. Then the logic can be written in Python, which is far quicker to prototype and refactor.

Your request for least favourite is probably flame-war fodder, but mine would be Java. Not so much for deficiencies in the language itself, but more for the hugely bloated (and IMHO badly designed) standard library, along with the 'official' GUI toolkits that do not uphold their promise to work the same across platforms.

Share this post


Link to post
Share on other sites
Chalk another one up for C#. It's got a nice syntax like C++, but makes working with windows forms and web stuff a breeze. That, and no real screwing around with pointers (which always seem to bite me in the butt).

Share this post


Link to post
Share on other sites
Here's where I see this thread going.

Most of the posts will be involved in the inevitable C++ vs. Java vs. C# flamewar.

Some posts will be involved in a discussion of functional programming languages complete with formal proofs and algebraic type system analysis.

Some posts will be from people who think they're being clever endorsing things like lolcode and Oook.

BTW I agree with swiftcoder, I don't have a favorite language that I use for everything, but several depending on the task.

Share this post


Link to post
Share on other sites
I want to say C#, but it's still so new to me that I'm going to play it safe and say C++. Because: It's the first language I choose to learn, and it has accomplished everything I have ever needed a language to accomplish, thus it has not forced me to go out and learn another language.

My question for you is: why do you want to know?

Share this post


Link to post
Share on other sites
C++
People seem to treat it like it is old fashioned or evil, but most who do treat it like that think it is a funny looking C. Even though it is so much more It even has map and reduce built in to the standard library so there is no need to go learn a functional language to get a taste.

Share this post


Link to post
Share on other sites
Quote:
Original post by stonemetal
C++
People seem to treat it like it is old fashioned or evil, but most who do treat it like that think it is a funny looking C.


Or are familiar enough to know it's old fashioned and evil, even using modern libraries and standards.

Quote:

Even though it is so much more It even has map and reduce built in to the standard library so there is no need to go learn a functional language to get a taste.


Low standards for what is considered a taste these days...


re: Simian Man; yes about right, though I'd place a little more weight in the functional camp.

Share this post


Link to post
Share on other sites
My favorite programming language is Python, except when I have to do a metric shit-ton of regex-based string manipulation, in which case it's Perl [smile]. I like it because it's both clean and messy, both good and evil. I can use it as a package of powerful utilities, or as a sandbox for experimentation, or as a lab rat I wish to dissect - metaclass hacking ftw!

My least favorite language would probably be Java, not necessarily for a particular technical shortcoming, but because of the amount of misinformation that has been dispersed via its adoption as a primary instruction language in many universities. Today I had my co-worker look at a very preliminary specification and start talking about what classes we needed: "We need an email class..." An email class?! What the fuck will it do?

Java has made many people class-happy, and makes them think they have to place everything in classes. Python, in total contrast, doesn't even require an application entry point (like Perl, and PHP, and Ruby, and...)

Share this post


Link to post
Share on other sites
I like C# the most. I like the similarities between it and C or C++, but I think the syntax is a bit nicer in parts. I also love properties and having built in support for interfaces (they're possible as full abstract classes in C++, but just easier to have it built in). I'm also a big fan of having a garbage collector do my work for me. That's just laziness, but I'm alright with that ;). And I like (in contrast to C and C++ anyway) not having to do all the #includes of various headers to access classes in the same project. I understand why they do, but I like not having to.

For a least favorite I supposed I'd go with VB.NET. I just hate the syntax of VB.NET and I hate that the compiler cares about line returns. For instance if I have a particularly long method declaration, I might want to break it up into lines to avoid word-wrapping or having to scroll to see it all. In C# I can just place arbitrary returns in where I want, but this breaks VB.NET.

Share this post


Link to post
Share on other sites
Quote:
Original post by NickGravelyn
For a least favorite I supposed I'd go with VB.NET. I just hate the syntax of VB.NET and I hate that the compiler cares about line returns. For instance if I have a particularly long method declaration, I might want to break it up into lines to avoid word-wrapping or having to scroll to see it all. In C# I can just place arbitrary returns in where I want, but this breaks VB.NET.

Underscore. It's the VB line continuation character. It's annoying, I agree, but... *shrug* At least you don't have to place an asterisk (by convention; formally a non-space character) in column 6.

Share this post


Link to post
Share on other sites
Quote:
Original post by NickGravelyn
I like C# the most. I like the similarities between it and C or C++, but I think the syntax is a bit nicer in parts. I also love properties and having built in support for interfaces (they're possible as full abstract classes in C++, but just easier to have it built in). I'm also a big fan of having a garbage collector do my work for me. That's just laziness, but I'm alright with that ;). And I like (in contrast to C and C++ anyway) not having to do all the #includes of various headers to access classes in the same project. I understand why they do, but I like not having to.

For a least favorite I supposed I'd go with VB.NET. I just hate the syntax of VB.NET and I hate that the compiler cares about line returns. For instance if I have a particularly long method declaration, I might want to break it up into lines to avoid word-wrapping or having to scroll to see it all. In C# I can just place arbitrary returns in where I want, but this breaks VB.NET.



Love C# as well, mostly for the same reasons. Also probably because its the "native" language for XNA ;)
Though I have to agree with others on the fact that it is more often than not better to choose the language depending on the task needed to perform.


@afarnen:
I don't know why you are asking the question, but its making me think that the goal is to pick "the ultimate best language" for you to learn. If that is so, I'd suggest you reconsider the strategy. What some people like, others may dislike a LOT about a language. I'd personally suggest to just pick a language, any language (ok, not VB :))) ), and stick with it. Get good at it, write a few simple games (I assume that's your goal, if you're posting on this website), then maybe find another language to learn. After a few, you'll have at least some experience to be able to choose the right language for the right job.

Share this post


Link to post
Share on other sites
My favourite language would technically have to be C++, because that's the only one I know well enough for any serious development. I'm fairly neutral about the language myself, but it's flexible enough to do most of what I need to do in a pinch.

My least favourite language would possibly be Java; not for the language itself mind you, but how it's now commonly misused as a first language to be taught to beginning computer science undergraduates (similar to Oluseyi's opinion). I personally prefer something like Haskell as a first language for comp. sci. like what my university taught.

I'd also like to point out that if you're asking this question to figure out the best language to learn, I'd caution against it. I certainly wouldn't recommend C++ as the first language for anyone to learn. If I were interested in learning game programming from scratch I'd go with Python.

Share this post


Link to post
Share on other sites
I never got far in ocaml but the fact that you couldn't do 1 + 1.0 bugged me so I went back to learning haskell. Ruby is cool to if you don't mind it being so dang slow. And hey c++ also has first class functions in the form of functors.

Share this post


Link to post
Share on other sites
All languages are the same, remember? What can I say in English that I can't say in Swahili or French (if I knew them - and yes, it is a metaphor, deal with it). Although, unlike with real languages, the language you learn first is not necessarily your most fluent or favourite.

Anyway, mine is C#. It's syntax is like "C++ for Dummies" (that might annoy people but who cares?) and .NET is probably the most useful thing Microsoft ever invented, save IntelliSense. My second favourite is Python - I learnt it enough to write a mildly-complex script interpreter in about 20 hours; easiest and second-most functional (not the technical sense of the word) language ever!

My most hated is Java. It's just plain ugly, and the pain you go through to get the compiler working and keep it working and then you have to use an interpreter ANYWAY (losing any speed you might have gained through a good compiler) is just annoying.

P.S. I know half the stuff I said about Java is not true, please do not quote me and say "Ah, but..."

Share this post


Link to post
Share on other sites
C++ is an old friend, but I like C# as a language for getting things done. I'd be 100% C# if only the .NET standard libraries were thought through half as well as the STL.

Share this post


Link to post
Share on other sites
C++

Mostly because it's the language I am most familiar with. I also like that it's paradigm agnostic. I can program with generic, OO, and procedural paradigms (to name a few) all in the same project, if I were so inclined.

Share this post


Link to post
Share on other sites

This topic is 3649 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.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this