Thread:SamwiseFilmore/@comment-25841881-20171204023045/@comment-25330335-20171204030334

Well, the two I would most recommend are not simplistic, but they are very powerful and offer you a lot of tools.

Rust
As you've probably heard, Rust is a "blazingly fast systems programming language". I've been doing quite a bit of programming in in recently (contributing to the [http://redox-os.org Redox-OS Project, written entirely in Rust), and it is a seriously powerful and cool language. Everything you can imagine is done at compile time instead of runtime, because it has no runtime overhead whatsoever (similarly to C, but without a runtime). It has a fairly considerable learning curve, and a lot of complexity (makes you think about things like allocation, stack and heap a bit more than other languages), but it's safe (completely, no memory exploits!), and allows you to write surprisingly robust programs. Rust includes features like heavy compile-time type inference and really high-quality compiler and package-manager/build system. For example, the JS runtime in Firefox is written in Rust. I'm not as familiar with bindings for OpenGL and the like for Rust, but I'm sure they exist and are pretty high quality.

D
D was my first programming language. It's a lot like C++ in that it tries to be C 2.0 with a lot of other stuff. It's a very practical and efficient language to write programs in, and has a lot of features that make writing programs quite easy and nice. It has functions, structs, classes, etc. The classes and single inheritance model you'll be very familiar with from Java, and if you want the shortest learning curve, this is it. D is a compiled language, and so it executes fast (although not as fast as Rust), and has a Garbage collector (not as good as java's but it does work). D also has a package manager and build system. It also has nice bindings to OpenGL and SDL, so you can use those libraries. They are 1:1 bindings, so they will work just like in another language.

Go
If you're looking for simplicity and easy learning curve, this is it. Go is a straigtforward functional language. It's clean and simple, and the whole specification can be kept in your head. I've never done any programming in Go, but it's a compiled language with a garbage collector and other helpful features. It has a package manager, and (maybe) bindings for OpenGL/SDL.

Those would be my main choices, although you could use C++ (ick) or C (less ick, but WHY). Swift is a nice language, but it's really not cross-platform (although it does run on Linux, and has been open source for a few years). C# is also an option, especially coming from Java, but again, I've never messed with it. Hope this helps!