Live data from Hacker News

Poll: What's Your Favorite Programming Language?

news.ycombinator.com

611–620 of 626 posts

Re: Poll: What's Your Favorite Programming Language?

#611

I have always maintained that if you have an unqualified "favourite" thing, you are probably not very in to that type of thing :) I use C the most because it is the most appropriate tool for the job at hand for most of the jobs I do. I appreciate the simplicity and elegance of Scheme, and wish I could use it more. I envy Haskell's type system. None are my favourite. After all, all programming languages suck.

Awe, that's the spirit!

Re: Poll: What's Your Favorite Programming Language?

#612
post #600

Earlier quoted context omitted.

Vim doesn't write any code for me yet I can still have long function names because of the cutting edge magic of auto-completion.

Autocompletion is writing code for you. That's what we're talking about here, in large part.

Touche.

Re: Poll: What's Your Favorite Programming Language?

#613

Here are the languages ranked by likes/dislikes ratio (I compared the above poll with the "dislike" poll: http://news.ycombinator.com/item?id=3748961 ). For example, for each person who downvoted Clojure, there were 28.8 who upvoted it. This ranking is fairer to languages that are well liked by those who use them, but not as well known: Clojure 28.8 Python 26.5 Haskell 19.7 C 17.3 Lua 16.4 Lisp 11.5 Erlang 9.9 Ruby 8…

Not everybody can downvote. That adds significant noise to this data.

I used the term "downvote" figuratively -- I don't mean literal downvotes on this poll (I don't think anyone can downvote a poll option anyway, and even if you could I wouldn't be able to isolate upvotes from downvotes since we just see the combined number); I mean votes for "least favorite language" in the other poll.

Re: Poll: What's Your Favorite Programming Language?

#614

Earlier quoted context omitted.

Definitely agree with you on C#. It feels like this is what a standard, mature, widespread language should be. There are other languages that are better for specific tasks, but for the general programming language, C# really hits the sweet spot in terms of features, expressability, readability, and environment. This is the language that Java should have been--could have been. Also, I dread getting asked on my next in…

C# programmer for a couple years, and I think C# is OK (it's definitely way ahead of Java or C++) but I've definitely got a big list of things I don't like about it. The top of it reads: - Events and properties aren't first-class, which is lame. I can't even easily get the "get" or "set" method of a property without either using reflection or making a wrapper lambda. - No syntax sugar for tuples. - No syntax sugar fo…

Did you have a look at Scala?

- There are only properties, no fields or other stuff. This means you can replace a method with a constant easily, or add your own setter to a mutable property later without breaking source or binary compatibility.

- Tuples: (1, "Foo", 42.0)

- val (a,b) = (1,2). Also works with regexes, case classes, ... basically everything which has an `unapply` method.

- class Something[T : Numeric]

- Type inference everywhere, with the exception of method parameters (and recursive methods).

It also has one of the most powerful type systems, traits, everything-is-an-object, higher-order functions, higher-kinded types.

Caveat: Runs on the JVM. The .Net port hasn't been officially released, but is planned for the next release.

There is an introduction for C# developers, if you are interested: http://docs.scala-lang.org/tutorials/scala-for-csharp-progra...

Re: Poll: What's Your Favorite Programming Language?

#615

Earlier quoted context omitted.

Do you mind if I ask why? Not being defensive, just curious.

Well, I'm not the gp, but I am a former C# guy who's happy to be out of that world. 1) I dislike C#'s types; they're neither as strong and intelligent as a ML/Haskell language nor as convenient as a Python/Ruby family language. 2) I much prefer the sense of design displayed by Python and Ruby open source projects over C#. (Not that there aren't issues there!) 3) I hate Visual Studio. Nice debugger, crappy interface f…

4) Powershell! Sweet mother of Scripting Gods, Powershell! As a language it's what Bash should have been. Bash is better in some usability senses like tab completion, but Powershell operates with pipelines of .NET objects instead of pipelines of text.

Re: Poll: What's Your Favorite Programming Language?

#616

Earlier quoted context omitted.

"Here's how to instantly find documentation on something." "That doesn't sound all that good to me. Here's how I do it in multiple steps, in a different window!" Do you see the problem here?

Yea, I really don't. What's wrong with different windows? I prefer to read documentation in a tool that is good for reading documentation (don't understand the IQueryable crap? Just jump over to StackOverflow in a couple keystrokes). The description I was replying to had you hovering over little thingies for tooltips. The whole time you're writing code little popups and widgets are flying all over the place. That is…

Stockholm syndrome.

Try Visual Studio for a month. At first you'll be like "get out of my way stupid intellisense popup" and then you'll be like "holy crap that just saved me 60 seconds... for the 60th time today." And then you go home early and use that free time to have sex with your wife.

Point being, it'll change your life for the better.

Re: Poll: What's Your Favorite Programming Language?

#617
post #474

Earlier quoted context omitted.

If my IDE writes 40% of my code it means i can call my functions ConnectToDatabaseCheckUserNameAndCountPosts() instead of ConDBusrCnt() just to save a few taps on the keyboard.

Though arguably that should be three different functions: ConnectToDatabase() CheckUserName() CountPosts()

Obviously that's not taken from any real code but just the most obscure function name that still makes sense that i could make up in my head while writing the reply.

...But even after splitting it into three functions you would still save 60% of your keystrokes by using auto completion ;)

  Con()ENTERChec()ENTERCou()ENTER

Re: Poll: What's Your Favorite Programming Language?

#618
post #426

Earlier quoted context omitted.

As someone who's more than happy with C#, I'm wondering if there's a world out there I'm missing but I can't really connect with what you're saying. 1. "Strong and intelligent"? "Convenient"? 2. "Sense of design"? My current side project includes a web scraper which uses the following open source projects: AutoMapper, CsvHelper, HtmlAgilityPack, Twitter Bootstrap, jQuery, Modernizer, Moq, NLog, MongoDB C# driver, Pet…

1. In Haskell and ML, I don't feel like I spend my life Listing , X >, and I have type classes. In Python and Ruby, I don't have to specify types. This lets me do all kinds of convenient things. I don't think it's far out to suggest these sorts of advantages, and I am 100% not interested in rehashing a flame war that's been had a thousand times over. Please allow that these are my judgements, and I hope you don't nee…

I stopped at the part where you compared ReSharper to VIM

I'm guessing you like to debug using print and the command prompt as well?

For most the world keeps on spinning, for some it stops in their youth. Sad.

Re: Poll: What's Your Favorite Programming Language?

#619

Earlier quoted context omitted.

What you suggest could work, but I'm not sure how useful that would be in the end when you still have to declare the type for fields initialized in the constructor. The var keyword inside methods covers most cases of using variables. A "var" keyword on the field level would cover less than half of the cases. Plus, you'd have to add a new keyword to do it as "variable" doesn't quite fit the meaning. Just not sure how…

You'd have to make special case syntax for it and it would just feel bolted on to the language. Plus, tuples lose their usefulness if you have to declare its type to pass it between methods. I think it could be OK even without return type inference on methods. Imagine you could type this: (int, bool) TryParse(string str) { // do stuff return (num, success); } That would be clean enough.

How would you access the return value object? Given obj is (int, bool), obj.Key and obj.Value? Or obj[0] and obj[1]?
Post reply on HN