MOUSE is a programming language that was originally intended for use on computers with limited memory in the 1970s and 1980s, but has since become an Esoteric language.
It is a stack-based language that uses Reverse Polish Notation for operations, and processes programs one letter at a time.
It can now be run on an Arduino thanks to a customised version that was ported by Ivan, which included an interpreter, line editor, graphics primitive and peripheral drivers, all within 2KB of SRAM and 32KB of Flash.
It also has several other features including support for PS/2 devices and video output, with the ability to save programs to the internal EEPROM.
While MOUSE doesn’t get much attention, it is an impressive language that balances between being useful and interesting.
For those looking for more of a challenge, there are other Esoteric languages that may offer more complexity.