Programming Languages Python, Java, C++, C, C#, Assembly, Objective C, Kotlin, Swift, BASIC, APL, SmallTalk, Ruby, Scratch, LabView, MATLAB, ForTran, COBOL, ALGOL, ADA, Pascal. Goal: Bridge the gap between what humans can understand and what computers understand. Computers run on machine binary. Patterns of 0's and 1's that trigger certain chips and relays in the computer to make it carry out its proper task. But these 0's and 1's are random gibberish to most humans. A lot of languages are "compiled languages." Java, C++, C, Swift, Kotlin. That means that the stuff you write in the language gets translated to something the machine can understand. Sometimes it goes through several different steps. C++ might get converted to C, which might get converted to assembly, which might get converted to machine binary. The computer runs the machine binary. Once you have the machine binary, you don't really need the original code anymore if you don't want it. You'll have one file for your original code ("mything.cpp") and another for the computer to run ("mything.exe"). Once you have the machine binary, it's very hard to tell from looking at the machine binary what the original language was. Python is NOT a compiled language. It's an "interpreted language." This means that it never gets to machine binary. The computer never runs a machine binary version of your program. The computer actually runs Python itself. And Python reads your program and executes it while it's reading it. Interpreted languages are usually slower than compiled languages. However, interpreted languages give you "immediate gratification." You can run it as soon you're finished typing it. You don't have to compile it. Visual Studio is called an IDE (Integrated Development Environment). Dr. Poe hates IDE's. IDE's are slow; IDE's are bulky. However, for a lot of people, they make programming and debugging easier. + addition - subtraction * multiplication / division % modulus. a%b is the remainder when you divide a by b. 10/3 is 3 with remainder 1. 10%3 should be 1. ** raises a number to a power What is 2 raised to the 1/2 power? That is another way of saying...square root? Python uses order of operations AND parentheses. + - * / % go in left-to-right order ** right-to-left order