There was some interesting discussion (thread1, thread2) following my answer to the question of "How do you choose the programming language for a project?" My preferred languages are Python, Go, C++, C#, JavaScript, C, Java, TypeScript, and Swift. Functional languages (Lisp, Haskell, OCaml, etc) are conspicuously omitted from my list. Why?
What if the programmers who prefer functional languages are essentially "left-handed"? Some product of nature and nurture leads most programmers in the world to be "right-handed", preferring imperative programming languages over functional ones. Some especially gifted people are "ambidextrous" and work well with both types depending on the situation.
What if the choice between imperative and functional languages is purely subjective? They are two different perspectives on accomplishing the same thing. There are advantages and disadvantages to both. Neither approach is empirically better. One is much more common for unclear reasons. Programmers of either preference can't quite understand the appeal of the other side.
I'll leave it at that. And for the record: I'm also right-handed.
I'm Brett Slatkin and this is where I write about programming and related topics. You can contact me here or view my projects.
16 January 2016
About
I'm the author of the book
Effective Python. I'm a software engineer at Google (currently in the Office of the CTO) where I've worked for the past 18 years. Follow @haxor on Twitter
if you'd like to read posts from me in the future. You can also
email me here.
© 2009-2024 Brett Slatkin