Building on the research work of Andrew S. Tanenbaum on computer networks and operating systems, the Internet of Things and Christmas 4.0, Peter Reichl et al at the University of Vienna have looked more closely at the question: how does Santa Claus program!
Assuming that this programming language will be used not only by Santa Claus, but also by elves, dwarfs and reindeer, the design is crucial.
With reference to the work on Brainf!ck as well as D. Morgen-Mar and his programming language Ook!, Hohoho! was developed.
Syntax elements of Hohoho in comparison
|+||Increment current cell||Ook. Ook.||HoHoHo||hoHo!|
|–||Decrement current cell||Ook! Ook!||hohoho||Hoho!|
|>||Move one cell right||Ook. Ook?||HoHoho||HoHo!|
|<||Move one cell left||Ook? Ook.||hoHoHo||–|
|[||Begin of loop||Ook! Ook?||Hohoho||–|
|]||End of loop||Ook? Ook!||hohoHo||–|
|.||Output of current cell||Ook! Ook.||hoHoho||hoho!|
|,||Read into current cell||Ook. Ook!||HohoHo||–|
By definition, each Hohoho! instruction consists of three consecutive “ho’s” or “ho’s”. Thus, any sequence of ho/ho’s can be separated and similarly connected in any way, as long as a Hohoho! compiler extracts only the consecutive triplets of ho/ho’s and interprets them as single instructions.
Therefore, any Hohoho! program can be rewritten so that an uppercase “ho” is always followed by any number (greater than or equal to zero) of lowercase “ho’s” plus an exclamation mark and a space.
In this notation, this means, for example, “Ho! Hohoho! Hoho!” actually translates to “HoHoho hoHoho” in the standard Hohoho! and corresponds to the BF command sequence sequence “> .”.
In fact, Santa does not use many of the basic commands for obvious reasons:
Loops are much more useful for Christmas carols and are therefore avoided by Santa Claus
Driving a sleigh backwards is extremely difficult and is therefore also carefully avoided by Santa Claus
Santa’s activity implies expenditures (gifts → children) rather than inputs.
As a result, the number of actual commands can be reduced to four, making Simple Hoho! an even more efficient programming language.