I can recommend you Lua or python as a scripting language. Lua is very elegant, smart and fast and has tons of libraries. Python is very popular so it has many libraries (more than lua).
For native code I tend to always recommend C++11 for the following reasons:
- speed of development: boost libraries and stl cover most libs and algorithms you'll need, lambdas are great
- type safety, const and the rest of things that make sure your code stays correct.
- templates. It's a tool like any other and they can be abused, sure. Many devs hate them, but when used properly can simplify code a lot and increase productivity and runtime speed.
C++ is big indeed, but it's well structured, consistent, and becomes very intuitive once you dive into it.
I don't really recommend object oriented programming though. Today it makes more sense to pick up other techniques - like data oriented design. OOP makes it very hard to reason about data/state in multithreaded scenarios.
What I recommend is to try to write as little code as possible by preferring existing libs and algorithms over hand-written code. This will make you very productive and limit bugs. Check out this talk from Sean Parent: http://channel9.msdn.com/Events/GoingNa ... -Seasoning
The whole GoingNative series is a great learning resource.
Also, there's Haskell.