GulfOfMexico
perfect programming language
Gulf of Mexico (formerly DreamBerd) is a satirical joke programming language whose README is a deadpan list of intentionally absurd features poking fun at real programming language design debates. It is not real software.
Gulf of Mexico is a joke. It presents itself as a perfect programming language, and the README is a deadpan list of features that are deliberately absurd. It was previously named DreamBerd, as a note at the top explains. The whole document is a piece of comedy aimed at programmers, poking fun at the design quirks and arguments found in real programming languages. It is not a tool you would use to build anything.
The humor comes from rules that sound confident but make no sense. Every statement must end with an exclamation mark, and you can add more to show enthusiasm. There are four kinds of variable declaration, formed by mixing the words const and var, each with its own contradictory rule about what can change. Arrays, the numbered lists most languages start at 0 or 1, here start at -1, and the README claims this combines the best of both options.
The jokes keep escalating. You can name a variable with almost any character, including emoji or even a number, so you can redefine 5 to equal 4. Equality checks come in several lengths, from a single equals sign for a loose check up to four equals signs for an extremely precise one. Functions can be declared with any letters from the word function as long as they appear in order, so func, fun, fn, and even a single f all work. There are no loops at all, dividing by zero returns undefined, and booleans can be true, false, or maybe.
Other entries play on real frustrations. The installation section says you install the installer by first installing the installer installer. Indentation must be exactly three spaces. Variables can be given a lifetime measured in lines or seconds, and a negative lifetime supposedly lets a variable exist before it is created. A technical aside claims type annotations do nothing but help some people feel more comfortable.
The README links to a separate examples page for those who want more. Treat this repository as satire and a bit of programmer in-joke rather than software with real features. The full README is longer than what was shown.
Where it fits
- Read the README for a laugh at exaggerated versions of real programming language debates.
- Share with developer colleagues as a comedic take on language design arguments.