Defining What an Application Is
As previously mentioned, applications provide the means to define express human ideas in a manner that a computer can understand. To accomplish this goal, the application relies on one or more procedures that tell the com- puter how to perform the tasks related to the manipulation of data and its presentation. What you see onscreen is the text from your word processor, but to see that information, the computer requires procedures for retrieving the data from disk, putting it into a form you can understand, and then pre- senting it to you. The following sections define the specifics of an application in more detail.
Understanding that computers use a special language
Human language is complex and difficult to understand. Even applications such as Siri have serious limits in understanding what you’re saying. Over the years, computers have gained the capability to input human speech as data and to understand certain spoken words as commands, but computers still don’t quite understand human speech to any significant degree. The difficulty of human speech is exemplified in the way lawyers work. When you read legalese, it appears as a gibberish of sorts. However, the goal is to state ideas and concepts in a way that isn’t open to interpretation. Lawyers seldom suc- ceed in meeting their objective precisely because human speech is imprecise.
Given what you know from previous sections of this chapter, computers could never rely on human speech to understand the procedures you write. Computers always take things literally, so you’d end up with completely unpredictable results if you were to use human language to write applica- tions. That’s why humans use special languages, called programming lan- guages, to communicate with computers. These special languages make it possible to write procedures that are both specific and completely under- standable by both humans and computers.
Computers don’t actually speak any language. They use binary codes to flip switches internally and to perform math calculations. Computers don’t even understand letters — they understand only numbers. A special application turns the computer-specific language you use to write a procedure into binary codes. For the purposes of this book, you really don’t need to worry too much about the low-level specifics of how computers work at the binary level. However, it’s interesting to know that computers speak math and numbers, not really a language at all.