Truth, Wonderland, and the Mathematician
As I mentioned elsewhere, there was a famous math professor named C. L. Dodgson who wrote fantasy stories under the name of "Lewis Carroll". They are indeed amazing, but one of the strangest things about them is the name of the heroine.
Even though Dodgson actually knew a young girl named "Alice Liddell" - the daughter of a fellow professor - if you study Greek you may know of the very famous "Liddell and Scott" lexicon - yes, it's that Liddell! Anyway, there was a real Alice. But there was something else about that name which may go unnoticed. And i tis a good thing I already mentioned Greek. You see, the Greek word Alhqeia means "truth" in English. The Greek word is transliterated as "Alêtheia"... ah you see? So the stories by this math professor are a kind of "truth in wonderland".
Well, back when I was doing my doctorate in computer science, I taught undergraduate courses for three semesters. I used these textbooks by Professor Dodgson to teach one or two very interesting facts about computers. And I explained to the class more or less what I have already explained to you, and told them I would read excerpts from these textbooks - except that some of them laughed because they didn't think professors in college would read Alice's Adventures In Wonderland to them! But I did.
Now I am sure you would like to know what parts I read. I will tell you one of them, because it is not very technical, and perhaps you will be impressed that Dodgson knew something about computers back in the 1800s.
The little piece I will read comes at the beginning of the discussion of the very important programming idea called "flow of control". In English, that simply means, "what happens next?" Remember, programming is just a way of writing instructions - so at first, you will say, that can't be hard - can it?
Then you will think of other kinds of instructions. Like a cake recipe: "Bake until a toothpick inserted near the middle comes out clean." Or a cookie recipe, "if using walnuts, fold in and mix thoroughly" Or later in the same one, where you put them separated by one inch, onto the baking sheet, and then repeat until all the dough is used up. Or in music, where you come to a double bar with two dots, or the Italian says da capo...
So there are things where you may repeat something or do somthing because of a condition or perhaps wait for some event... these are all specialized kinds of instructions which computers can perform, which direct or change where the control is "flowing" - that is, what happens next!
But there is one other very special kind of flow which most people, and even most programmers do not notice.
But Dodgson did.
It is called linear flow. That is, like reading a story, or regular music, or the main body of a recipe... but it is put so elegantly in Dodgson's book that no one says it better. Here it is:
The White Rabbit put on his spectacles. "Where shall I begin, please your Majesty?" he asked.That's what we call linear flow of control. It's so obvious no one notices it. What's extremely funny, however, is that there are some modern computers where the computer does not do things in order... it makes us programmers uncomfortable. It is sort of like a friend who told me he always reads the last chapter of a book FIRST, in order to see if he'll like the book... (Horrors!)
"Begin at the beginning," the King said gravely, "and go on till you come to the end: then stop."
[Carroll, Alice's Adventures in Wonderland Chapter 12]
Strange; maybe that's why God gave us that Book of Revelation in the Bible...
If you want to know the other technical parts, you might wish to find them for yourself. (Though if you can't find any, let me know and I will do another session.) However, I strongly advise reading the Alice stories again as an adult, for you will have even more fun... You will have the same results with other "children's" books!