Rust, it is a pleasure to work with and far more flexible in where/what it can run then a lot of languages. Good oneverything from embedded systems to running on the web. Only really C and C++ can beat it on that, but those are farlesss pleasant to work with. Even if it is not as mature in some area quite yet, it just gets more support for things as time goes on.
DotNet Core as a whole (C# + F# + other languages that are being ported to compile down to a DotNet binary).
Because it has all the things Java promised us - frictionless, painless, cross-platform programs - but is implementing it far better than Java ever could.
Honestly, DotNet Core is now at least a half-decade or more ahead of Java in terms of the base platform and C# language functionality/ease-of-use. The only advantage Java has at this point is it’s community ecosystem of third-party features and programs.
Python. Not even a competition. My love of programming quadrupled the day I switched to python and it's getting stronger and stronger. I have now 10 years of professional python experience and around the same of C++ with occasional C#. A few projects in Go and Java. They all have ups and downs, but... Not even comparable how much everything is more elegant and simple in python
Python. I'm in data science. Sure I could write all that code in C or C++, but my time spent coding all that extra boilerplate is better spent on analysis.
I've already made this choice. Switched from C++ to Go, and now I never want to touch another language at all. Since I'm not writing kernels or embedded, Go is pretty fast for everything else. Not very popular in gamedev, but that's just a lack of 3rd party libs, specifically native graphics support.
As for other languages, I can't justify unnecessary complexity that is generally welcome by those language communities. Go is straight simple yet powerful, and I admire that.
I'd probably pick something esoteric and then just stop programming, tbh. I enjoy being a polyglot programmer, and learning many languages and learning from many ecosystems is incredibly interesting to me, far more than hyper-specializing in a single language would be.
Scala. Expressive, concise, can scale from simple to sophisticated. Sufficiently powerful - has metaprogramming, advanced types. Runs on a world-class runtime and takes advantage of a huge, mature package ecosystem that isn’t going anywhere.
Unison. If it were to gain mainstream adoption, it would change the world. It’s a crazy futuristic idea and no one else seems to even remotely be approaching the same thing.
I know this is a harmless "what if" but let's be encouraging people to explore more languages not to choose a single one to be everything for all time.
C, because I can find a compiler or interpreter for other language written in C (I may need to run a few steps to get there), and thus work around your silly and nonsense question. Seriously, I use multiple languages because there is no one true language to rule them all. I use C++ for problems where bash would be wrong, and bash where C++ would be wrong. And some python, cmake, lua mixed in for good measure. I'm looking at Rust to add (rust doesn't like the way our system designed so it is hard to figure out how to implement it)
Typescript. I greatly prefer C-Style curly brace languages over Pythonese langs. Also the typesystem is incredible, as it allows you to be as precise or not as you want which is a huge boon.
JavaScript. I can't think of anything else that can be used for everything. It's a back-end language, a front-end language, it can be used for styling and animation, it can be an OOP language or a scripting language, and can make database queries & submissions. Is there another language that is as versatile for website development? I can't think of one.
Probably Ruby. For some reason .. no, that's a lie .. playing with Exherbo, Gentoo and Funtoo, but mostly Exherbo, made me loathe Python. However, everyone in the data processing arena seems to use it, so I'm bound to have to change my ways eventually! For "Ruby": read "Python".
My days of needing high-speed low level languages are long gone. I learned C on Borland C++ back in 1990 to price derivatives on 386s. Loved it.
If I mess around with any language it's for fun. I intend to commit suicide, when my time is done, by the percussive head trauma that learning Haskell will cause me.
Ideally I'd choose Rust because I enjoy working with it, but don't have enough time to commit to it at the moment. But being Practical I'd probably say Java, its easy to get stuff going and has been around forever so it's easy to find solutions etc.
Gives you more flexibility and freedom that most scripting languages. The syntax is clean and concise, the tooling is amazing and can compile to JVM, JS, Native and WASM.
I don't really want to do everything in one language but if I did have to pick it would probably be Julia. It's slightly simpler than Python, and significantly faster without relying on APIs written in C. And has some really great features like broadcasting, multiple dispatch, and a good type system. The only place I feel like Python has it beat is quantity of libraries and support network, which both basically come from the same origin of just having more users. I'm hoping more data science types switch over in the next few years, since Julia is already great for most things mathematical. And I hope that momentum allows Julia to perhaps reach out to other domains.
The case for Python is that I'm already very experienced in it (nearly 20 years), there's a good job market out there for it, and the ecosystem is one of the best in existence. It's like a comfortable well made jacket, maybe a tad worn in some areas but very functional. And it's not standing still, with a community that's committed to constant improvement.
Rust is more fun. I like the way it's been put together. It can also be used in more areas. There are some niches (wasm, low level, kernel) where Python just doesn't work. It has been able to benefit from the years of mistakes from Python and other languages on things like how it handles Unicode strings. I don't know it as well as Python, but I barely get a chance to work with it so that could change quickly in time.
So many great viewpoints here. Crystal for faster and concurrent Ruby. Crystal has a pretty advanced Web Framwork called Lucky not many know about. Haskell so good, but hard to convince people to use it for projects. Haskell also has a very advanced Web Framework called Integrated Haskell Platform. Scala's very impressive feature set. Zig is in such a super position and Julia is capable in so many ways including Fortran integration.
I'm surprised no one has mentioned Chapel or Nim though! My favorite programming speed benchmark is spectral norm and even though Chapel is the fourth fastest language (not benchmark) it's not using the forte of grid parallelism!
Nim is getting to be quite the monster and not beholden to Mega-Corps finance/steering like Python and Go are.
Also I want to add that Zig blows Rust away in many performances!
NOTE: Just as an ethical, solo, non-commercial Engineer, I sponsor Nim on Patreon and Zig on Github
Full Disclosure: It was me that downvoted preferences for Python and Go as the one language. One lang a low level scripting lang? Preposterous! LISP can do/be anything for example. Get out of here with that undercover marketing/influencer speak!
C. I've been programming for over 30 years and it's the only language to survive. Imagine if I was asked this question 30 years ago and picked perl or Pascal, I'd be screwed today.
Relatively useless, but did in the past use it to remotely control a DVD recorder, with relays on the LEDs of a 2400bps modem hooked to the channel up and record buttons.
Also to generate a Web page showing account balances for dialup customers in the 90s.
Now, to switch analog and digital inputs for our community radio station via telnet.