This is the thing: Computers are dumb. Really dumb. Basically, all they can do is store values at places, change the values and, er, that's it. Addition and subtraction. That's because the most powerful desktop PC on the market is as intelligent as a grasshopper.

So, when you want to write a program to, say, send email, you need to break that down into itty-bitty chunks that the (dumb) computer can understand. This is why high-level languages are easier to learn than low-level languages, because you don't have to break things down as much. Try explaining the concept of a derivative to a grasshopper (Machine Code), then a mouse (Assembly), then a dog (C), then an infant (Java), and you'll see what I mean. Python (CPython, anyway) is built on C, which is built on...something. Assembly. Machine Code. When being interpreted, a Python function is broken down into several lines of C, which is then broken down into Assembly, then Machine code so that the processor knows what the hell is going on. Then, the Machine Code output is built into Assembly, then built up into C, then back into the python CLI, giving (hopefully) the desired output.

If you can directly program in Assembly or *gasp* machine code, try teaching the alphabet to ants! After all, one ant is about as intelligent as a PDP-7!*

*It probably isn't, but hey, what do I know?

Log in or register to write something here or to contact authors.