I've taken a course in C++ in my freshman year in undergrad. However once it was over I never employed it in any project or use. I am familiar with some average topics in C++ prior to where 'link list' starts. Once I got the opportunity to do my first project after Sophomore year, I was suggested by my prof. to learn Matlab which is widely used in mathematical and engineering projects. Now I am pretty comfortable with using Matlab for my research. But I often hear from people that Matlab is not a language and that it can't take the place of any programming languages like C++, Java, Fortran etc. I am also concerned that Matlab is hardly used in industry (any!) because of its costs and its inability to run using executable files unlike Fortran, C++ etc.
I am wanting to learn a programming language:
1) Which takes care of the above, and other, issues which Matlab lacks in many aspects.
2) Which is widely used and available in industry and research centers.
3) Which is relatively easy and quick to code, and powerful in its capabilities.
Also please:
1) Give the advantages and disadvantages (over Matlab) for the language you suggest.
2) The best way to learn it.
3) The proper sequence of topics to learn knowing that I am familiar with the programming concepts.
4) A source, which is easy, good and interesting, to learn from.
EDIT: My area is not software development or computer engineering. My purpose of learning a new language is based on engineering and mathematical projects. Though there could be some scope of development of simulation software, or integration of scripts to make some changes in already existing software.
Thanks for your suggestions.