But Haxe (http://haxe.org/) has some great momentum these days, and with a bit of cleverness can target native and web at the same time. Checkout out http://snowkit.org/ and http://haxor.xyz/ for some examples.
It might also line up nicely with your javascript background.
Dart + StageXL (http://www.stagexl.org/) also looks like an appealing choice, especially if you're coming from the JS world. It lacks an easy way to build a native target, though.
But pretty much any language out there has bindings for input, graphics and sound, so if you're more interested in just learning a new language, use whatever you want.
You're probably going to be going through some more untested ground (compared to working in straight JS if you're going for web), but I quite like working in Haxe personally, and the #haxe irc channel at freenode is very helpful :)
I think it's weird to say process doesn't matter, it definitely does, the fact that (some parts of) the gamedev world sticks almost entirely to "tested" technologies is more a sign of it's conservativeness than anything else. (okay, it's not just that (cue endless memory and performance arguments), but in large part, it really is!, okay and sure friction may be slightly less in something which is more well used, but that's not an excuse to not go for the interesting alternatives!)
So for the OP, if you want to learn an interesting, but sort of fringe language, take a look at haxe (people like: http://grapefrukt.com/) use it for game dev for example!
[0] http://haxe.org/manual/lf-pattern-matching-guards.html [1] http://haxe.org/documentation/introduction/language-features...
It seems like it could fit well with the needs of game developers since it offers fast and predictable performance, compared to anything with a garbage collector, but it also offers compiler infrastructure to make it a lot harder to shoot yourself in the foot, though it does feel restrictive to start.
Piston is a game engine that folks have written in rust that you might be interested in playing with: http://www.piston.rs/
If you want to learn a modern language with interesting ideas and a robust paradigm for developing efficient programs, and are happy to work in the single developer indie gamedev space for the time being, Rust is good and occasionally mindbending fun.
It depends a bit on what OP wants here though. You're not going to get a job writing a game in Rust for anyone else anytime soon. If you want to be an industry game programmer, you pretty much have to know C++. Knowing Rust will help in learning C++, but if you want to be sensible and efficient, you'll just go straight for C++.
If you want to go the indie route, nothing stops you from starting your own game project in Rust right now. But again if you want to be a sensible and efficient indie game developer, you'll pick up an established engine like Unity, and start making your focus-group tested game concept with market projections and publicity plan using all the ecosystem juice you can get. Rust has no established engines yet, Piston is work in progress and doesn't have any big games done with it, so your game development endeavor is going to be more about developing your own basic engine technology than being an efficient and competitive player in the indie game marketplace.
Since the OP comes from a JavaScript background, the static typing and low-level of Rust will be great things to learn. One also gets first-class functions that aren't insanely verbose (a problem with C# and Java 8). The structure of the game engine will also translate well to the more popular languages in game dev (C++, C#, Java).
OP, keep in mind that older languages do keep getting updated so that they stay fairly modern. In particular, Java 8, C# 6.0, and C++14. C++ especially is very common in the game dev world.
The game development community doesn't really buy into the crap that the web development world does. People care more about results than process there, and as a result, care far more about performance and ease of development, too. That means using tested technologies.
Large game engines are built in C and C++, and their exposed scripting APIs are provided in Lua, C#, and JavaScript.
I don't know anyone that writes games other than Flash ones that don't subscribe to the language ecosystems of the ones above or general game development ecosystem that you can take seriously.
Game development is a multidisciplinary field, don't test the waters there for playing around with a new language. You're missing so much more when you make that your goal.
If you want to fool around with languages, you can do that without making games, but you don't have a game concept.