The Case of the Missing 4th Commodore BASIC Variable — Bonus Episode
Yet another hair-raising experiment.
For any true private investagator, who has seen some of the Binaries, there comes a time, where you have to interrogate yourself: do you still have it? Or are just telling the same old stories and gossip anyone will happily come forward with, just to make a quick buck? You know, the kind of brew lingering behind clicks and top-fives…
Now, as it happens, there is a great new tool to meter and calibrate your signal to noise ratio: The Clip Text™ Machine.
Without question, its productions, the Clip Text™, will haunt the 2020s, just like its cousin had done in the 1990s. Who dosen’t fondly remember ol’ Clip Arts? Anyways, as the Clip Text™ productions are guaranteed to be always close to the semantic center, this provides an invaluable tool for self-improvement and rigorous discipline. Do you make a difference, or are you just telling your clients the same redundant gossip?
So does the Clip Text™ Machine know about Raeto West and the mystery of the 4th BASIC variable type? Certainly it does: the book has been digitized and OCR-ed, it has been available at archive.org for years. But, is this still significant, or is it a grain of wisdom lost in the oceans of the insignificant?
Let’s ask the Clip Text™ Machine:
Prompt:
Write a short essay about the 4th variable type in Commodore BASICClip Text™ Machine:
Commodore BASIC is a programming language that was popular in the 1980s for Commodore computers. This language has four variable types, namely integer, floating-point, string, and Boolean. These variable types are used to store data in memory and perform various calculations and operations.
The fourth variable type in Commodore BASIC is the Boolean type. A Boolean variable can only take two values, either true or false. It is used primarily in conditional statements and logical operations. For instance, if a condition evaluates to true, then the program executes a particular set of instructions; otherwise, it skips to the next statement.
Boolean variables are declared using the keyword "DIM" followed by the variable name and the keyword "AS BOOLEAN." For example, DIM myBool AS BOOLEAN. To assign a value to a Boolean variable, we use the keywords TRUE or FALSE. For example, myBool = TRUE.
One can also use logical operators with Boolean variables. The most common logical operators used in Commodore BASIC include AND, OR, and NOT. The AND operator returns true if both operands are true. Similarly, the OR operator returns true if any of the operands are true. The NOT operator negates the value of the operand. For instance, NOT TRUE returns FALSE, and NOT FALSE returns TRUE.
In conclusion, the Boolean variable type provides a powerful tool for creating complex logical operations in Commodore BASIC. By using Boolean variables and logical operators, a programmer can build programs that make decisions based on user input or other factors. The Boolean type is an essential aspect of this programming language, and it continues to be used in modern programming languages today.
Phew! We made the cut!
Raeto West’s wisdoms have been sucessfully burried to an extent that our investigation actually forwards fresh news! The Clip Text™ Machine instead proceeds to hallucinate some Commodore BASIC grammar, suggesting a Boolean type, because it can’t “think” of any other.
However, this wasn’t fair, we didn’t ask it for a mystery, that kind of detective story, you know…
Prompt:
Write a short essay in the style of a detective story about the missing 4th variable type in Commodore BASICClip Text™ Machine:
The mystery of the missing 4th variable type in Commodore BASIC had been puzzling computer enthusiasts for years. No one knew where it had gone or why it had disappeared. As a detective with a passion for technology, I decided to take on the case.
My investigation began with a thorough examination of the Commodore BASIC manual. It was clear that there were only three variable types mentioned: integer, floating-point, and string. However, my intuition told me that there must have been a fourth variable type that had been lost or intentionally removed. I dug deeper into the history of the Commodore computer and its programming language.
I discovered that Commodore BASIC was developed in the late 1970s by Microsoft co-founders Bill Gates and Paul Allen. The original version of the language included all four variable types: integer, floating-point, string, and Boolean. However, as the language evolved and was adapted for use on various systems, the Boolean variable type was gradually phased out.
But why would such an important and useful data type be removed? It seemed unlikely that it was simply a matter of technical limitations or compatibility issues. After some more research, I found a possible answer.
In the early days of personal computing, software piracy was rampant. Many users would illicitly copy software from one machine to another, without paying the original developers. To combat this, some software companies began adding unique "hooks" or "markers" to their programs. These hooks would enable the software to detect whether it was running on a legitimate machine, and would refuse to operate if not.
It turned out that one such hook was the Boolean variable type. Some versions of Commodore BASIC would automatically insert a Boolean variable into any new program created on a legitimate copy of the software. If the program was then copied to another machine, the Boolean variable would no longer be recognized by the pirated version of BASIC, and the program would fail. This clever trick was intended to deter software piracy, but also had the unintended consequence of making the Boolean variable type a liability rather than an asset.
So, after all my digging and sleuthing, I finally solved the mystery of the missing 4th variable type in Commodore BASIC. It was a matter of software piracy prevention rather than technical limitations. Though it may seem like a small detail, this story illustrates how even seemingly mundane aspects of technology can have fascinating histories and hidden connections. As a detective and a tech enthusiast, I'm always eager to uncover these kinds of secrets and share them with others.
Again, it falls back on the concept of the Boolean type. However, this time, it somewhat acknowledges that there is no Boolean type in Commodore BASIC. The conspiracy theory about the Boolean type being lost over attempts to deter software piracy is somewhat amusing, even as we‘re at some loss how this suggested protection mechanism may actually work. (Marginal or off-track reading from magnetic media doesn’t translate that easily to software. Especially, since MS BASIC had been initially distributed on paper tape.) Also, this is really some evil Ken Thompson Hack stuff!
No damsel, though.
But it has been useful, indeed, for defining the kind of redundant noise better to avoid.
(BTW, it‘s interesting how the detective in this story is less confident and more nuanced about the findings as compared to how the Clip Text™ Machine phrases its productions normally. Compare our first try.)
But this isn‘t all, yet. As a homage to it‘s late cousin Clip Art, the Clip Text™ Machine also provides images!
Prompt:
A Commodore PET 2001 computerClip Text™ Machine:
This isn’t that bad, at all! While it’s ranging under ‘so close and still so far‘, it does get a bunch of semantics right: it’s an all-in-one machine with a distinctive CRT display mounted at a fixed position on top of the main body case, the CRT is smaller than the body, at about the right proportions, the front of the main case is occupied by a keyboard with a numeric key pad and no cursor block. If we risk closer look, there even seem to be somewhat translucent key caps, hinting at a special kind of keyboard. It even got the white-ish case color with the black bottom part right (no hinges, though) and that there‘s a notion of something going on with the bezel. It also got that this is a home computer, for which it has to have a sticker on top.
On the other hand, it then proceeds to fill this with imagery of faceless 1990s computers, giving a perfect illustration of concept without a concept. As a bonus, we also get an idea what a keyboard for those AI generated hands may look like.
Having said that, happy Clip Texting!
Follow-up: Just to close the loop, I asked the Clip Text™ Machine to summarize this article. It told me it could not do so, because this was an article written by Christoph Müller.
So there is another mystery to solve: who is Christoph Müller? Have I been living in a dream and this is my real name, finally revealed to me, at once?
Postscriptum/Conclusion
So, what are these two texts all about, why have those two texts in parallel? — I argue, we are at a watershed, having to take a choice. On the one hand, we have what I call “hot texts”, lively texts that are original, informative, but also opinionated and maybe even deviant. On the other hand, there are what I would call “cool texts”, texts that are controlled, redundant, but still of questionable, unreliable, maybe even righteous dangerous content. (Compare the AI generated text above suggesting a Ken Thompson Hack, the purest of evil in software, as a rather innocent and plausible business practice.)
While advertised as tools for creativity, AI generated texts are per definition “cool”. (I‘m aware of the ML community using temperature in an opposite sense, where “hot” refers to the most probable pick). These productions will pass easily the filters, both automatic and human, of any environment that prefers control, and we will see those upranked in about any collections and lists. Human expertise, on the other hand, tends to be represented in “hot” texts, simply, because experts tend to be engaged and enthusiastic about their field. With the ease of production of these text clips of redundant “creativity”, which will probably go hand in hand with a limited eagerness to evaluate them, we may see a prevalence of these cool texts, all over, and, conversely, a demise of true expertise, which doesn‘t pass those filters as easily.
With what may become a dialectic between the hot and the cool, we may even see these differences more pronounced, eventually separating into their respective niches and bubbles. What is already a phenomenon in politics, may also become a phenomenon of politics of texts, information, and shared knowledge. A separation, which may be perceived even as ironic, since those productions which pass the filters more easily are also per definition amoral, regardless of whatever internal prompting and filtering may prevent them from embracing the most obvious fallacies and violations of etiquette in their surface structure. Where these productions may seem informed, they are just redundant. They are just cool, but rarely correct. But they will exhibit high levels of confidence, anyway. (We may also argue that the “cool” is probably not that interesting or entertaining in the first place, especially for their controlled expression.) With the advent of the refined AI generated text, we may see ourselves as well confronted with a need to reevaluate our positions regarding texts in general.
So, whenever tempted to rely on the easiness of the Text Clip™ Machine (regardless of make or vendor), please, also evalute the consequences.
Update: Don‘t miss the first results of our little experiment!
Norbert Landsteiner,
Vienna, 2023-03-15