
So: masochism. You may know that it gets its name from the 19th century Austrian nobleman and writer Leopold Ritter von Sacher-Masoch, and specifically from the content of his famous work. Venus in Khazwhich catalogs the narrator’s submissive nature and willingness to experience pain and humiliation. It seems that Masoch himself was not disappointed that his name was attached to such requests – which would probably be fair, considering that the term was first used in “The Book”. Gender of psychopathywhich led to denialism by assuming that Masoch himself would “achieve true greatness if he were actuated by normal sexual feelings.” Happily, modern attitudes toward the “S” part of BDSM are much clearer than they were in the 1880s and 1890s.
In completely unrelated news, a YouTuber named icinessSomeone whose bio on the site simply reads “try now, suffer later” has written an entire first-person shooter in COBOL.
If you’ve never dabbled with COBOL, good for you, and you should probably keep it that way. This language is among the oldest computer languages and was developed in the 1960s to run business mainframes. That’s probably what drove poor Ginsberg to do it Mad Men get out of your mind. COBOL is still used today, mostly on older mainframes and other places where existing systems that still work for all their shortcomings cannot be replaced.
One purpose for which it has not completely fallen into disuse, and indeed has never been used, is programming first-person shooters. So why would anyone, for the sake of all that is good and holy, do it to themselves?
In his video, icitry asked the project “What’s the dumbest, but technically possible language to write a small FPS style game?” He explains that he started with the question. The answer was yes, COBOL, and because the laws of the universe dictate that anything can happen need happened, the ictry started. Long, tedious, exhausting working hours.
As he noted, COBOL “lacks most of the features found in older, verbose, even worst modern languages … and is definitely not designed for game development.” All of this is true, although in all fairness to COBOL, it was created at a time when people still understood how programming should work and what a programming language should aim for. Its earliest standard predated the idea of structured programming, although it soon drew criticism from proponents of the concept—notably Edsger Dijkstra, who hated language and language. he said its use is “mind-numbing.”
To modern eyes, just trying to parse a COBOL program is enough to cause a headache, let alone trying to write a game in it, but miraculously, icitry manages to launch its Wolfenstein 3D-esque project. It avoids COBOL’s complete lack of graphics functions by treating the game as what it calls a “frame generator”: its code calculates the contents of each frame and uses the standard output function to write the results to a simple image format. Given by this ffplay— which is, yes, probably cheating, but even old Leopold wouldn’t try to write an entire graphics API from scratch in COBOL.
Elsewhere, ictry circumvents COBOL’s lack of input management by using the console to enter single characters into the game. It doesn’t really get around the fact that COBOL doesn’t have any vector math functions – which is kind of important for a game where the entire gameplay revolves around calculating and manipulating 2D motion vectors – it just works around them by kind of writing them itself. And then, as if that wasn’t enough self-punishment, he goes the extra mile by implementing it. DOOM engine functions such as variable roof height.
The whole project is a testament to humanity’s ingenuity, resourcefulness, and ability to withstand all kinds of self-punishment. Looking at the gameplay, you’d never guess that it’s written in a language that’s clearly not up to the task.
Still! At least it’s not FORTRAN, right? Right?? *Cut to an Austrian aristocrat on his desk with a copy A Fortran Automatic Coding System for the IBM 704 and DOOM source code*





