.. _languages: ============================================================= Programming languages ============================================================= There are many programming languages in wide use today. There is no *best language* for all purposes. Most languages are better suited to some tasks than others. In your future work you may need to know several different languages, either to work with programs written by others or because you do different things most efficiently in different languages. You may also have to work with programs that use multiple languages together. Sometimes this is done in order to use each language for the part of the program it is best suited to. Other times because you need to combine existing programs that are written in different languages into a single piece of software. Many students in the class already know Matlab and/or Java. In this class we will mainly use two languages: Python and Fortran. Why these two? See the section :ref:`python_and_fortran`. The rest of this section is a brief overview of some primary differences between a few different types of computer languages (not exhaustive!). Interpreted languages --------------------- Compiled languages ------------------ Object oriented languages ------------------------- Further reading ---------------