Repository: https://github.com/fetlang/fetlang

Fetlang is a statically typed, procedural, esoteric programming language and reference implementation. It is designed such that source code looks like poorly written fetish erotica

Fetlang is not recommended for production use at this moment, especially in medical or military applications


The following example outputs the arguments given to the executable:

Make Sean moan
Worship Carrie's feet

Bind Amy to Saint Andrew's Cross
    Have Amy hogtie Sean
    If Amy is Carrie's bitch
        Make Slave scream Sean's name
        Make Sean moan


  • Input/output with standard streams and files
  • Statically typed
  • Gendered variables
  • Access previously mentioned variables using pronouns
  • Numbers represented internally as fractions instead of floating point
  • Transpiles to C
  • Confusing English-like syntax and unhelpful error messages
  • Turing complete (See here for a Rule 110 implementation by Kjeld Schmidt)
  • Has a Vim plugin (thanks to Kutsan Kaplan)
  • Can be extended with C, C++, or Rust



  • meson
  • ninja
  • gcc/g++(>=4.9) or clang(>=3.5)

Optional dependencies:

  • boost algorithm(>=1.62)
  • boost filesystem(>=1.62)
  • boost system(>=1.62)

Supported systems:

  • macOS (tested with Travis CI)
  • GNU/Linux (tested with Travis CI)
  • Other modern Unix-like systems
  • Windows 10 under WSL/WSL2

Build Fetlang:

$ git clone https://github.com/fetlang/fetlang
$ cd fetlang
$ meson --buildtype=release src build
$ cd build
$ # Build Fetlang
$ ninja
$ # Run unit tests
$ ninja test

The build will use the version of Boost included in Fetlang by default. If you want to use your system’s version of boost, you can run meson configure -Duse_system_boost=true in the build folder

Install Fetlang:

$ sudo ninja install
$ # Make sure it worked
$ fetlang ../examples/hello.fet && ./a.out
Hello World!

BDSM – The perfect operating system

If you’re not familiar with the acronym BDSM, I recommend you wiki for it first. Make sure you do this in a quiet, peaceful place, preferably with no wife, children or coworkers around. It’s not that your eyes are going to melt, it’s just that some might find your newly acquired taste in leather, whips and punishment a little odd.

So what’s my angle? Well, making an operating system that works on the principle of sin and punishment sounds like a darn good idea. Today, computer users use and misuse their machines any which way, with no regard to their digital health. There’s no accountability, save for really dire things. Most of what we do with and to our computers is whim, accident, monkey-learned habit, and maybe, just maybe, a bit of productivity. It’s time for the software to strike back. Introducing BDSM operating system.

Note: In this article, I’ll use desktop mockups based on existing operating systems. Please note that stuff shown here does not reflect the quality of experience you may, well, experience when working on said operating systems. Furthermore, no kernel was harmed during the preparation of this article. Afterwards, maybe.



BDSM boots with a random page taken from Crime and Punishment by Dostoevsky as the wallpaper. This is to remind you that you’re working with a serious operating system that won’t let you fool around.


Illegal or stupid use

Your operating system is uniquely identified to you using your national ID number or equivalent and your bank account number. Any time you attempt an illegal operation, like using My Document to store your files or signing in to Facebook, your bank account will be charged a penalty fee.


Randomly wipe files on computer

Most people complain about their files mysteriously vanishing from the computer. You’ve heard people say, my files are gone, as if the files can go anywhere. They haven’t got any legs. Then, if you removed the My Documents icon from the desktop, 99.99% of all computers users would never be able to find their stuff.

Better yet, sometimes, you see these desktops, crowded with files, usually Word and Powerpoint stuff, serving as a temporary storage space, also known as Temporary Idiot Repository (TIR).

BDSM takes care of that by randomly renaming, moving and deleting files, making it harder for the owner to find them, simulating the reality that much better. Furthermore, it gives you a truly justified reason about files being gone as opposed to self-inflicted confusion.


Timely slowdown

Most people abuse their machines so badly that they do an incredible thing: they slow down with time, against all odds and logic as laid down by Alan Turing in his deterministic finite-state machine model.

To help people cope with their ineptitude, BDSM has built-in algorithms that will slow down different system functions over time. Eventually, you will experience increased boot times, random new services and device drivers added to system startup, more crashes and errors, and finally a complete seizure. Disk, CPU and memory usage will all balloon, forcing you to buy a new machine after approx. seven months of use.

System usage

Only the best deals for you

BDSM comes with a wagonload of crapware installed. To make the ultimate suffering experience complete, the operating system ships with the finest, most advanced Internet technologies included, like AOL dial-up with Ingrian support and BonziBUDDY intelligent software agent.

BDSM also forces you to use no less than four anti-virus programs all at the same time, although you will have to renew the user license every three months. The programs will run full daily scans, bringing your machine to a virtual halt. They will also occasionally flag innocent files as malware and quarantine them, making your life a tad harder.

Anti-virus alert banner

Special Assistive technologies

To make the experience as genuine as possible, BDSM comes with a complete 3D kit, which is used to enhance the multimedia sensation. The kit includes a chair with specially adapted seat and backrest.


In the aforementioned areas, you will find tightly coiled metal springs that are activated by segfaults in code. Whenever you run a program so that it crashes, the coils are released, delivering numbing pain into your buttocks and the small of the back.


Note: Image adapted from Coil spring animation, licensed under GFDL 1.2.

Another possibility is to use electricity, but this could be dangerous since if you’re in contact with a piece of hardware when electrocuted, the hardware may be accidentally damaged, so this should only be used while the computer parts are still under warranty.

Another technology used for punishment is the sound. If you misuse your software resources, a high-pitch, ululating sound will blast in your headphones. The frequency is carefully tailored to match your inner ear resonance so that you experience both mechanical aural pain and a brutal sense of dizziness and disorientation.


However, the two most important pieces of technology used are the keyboard and the mouse. With super-heated metal keys and a spring-loaded needle in the left mouse button, you’re in for a lot of corrective, adaptive fun.

Superheated keyboard

Finally, the chair you sit on is specially designed to change the back recline and the seat angle and height so that you experience varying degrees of discomfort while working on the computer. Since most people ignore ergonomics, this is a great way of reminding them of delicate internals of anatomy. And that would be all!


There you go, the perfect operating system that should turn you into a hacker within days. Nothing like the fear of pain to make you perform at your best. That or hysteria. You may feel slight physical and mental discomfort at first, but it will definitely be worth it. I hope you enjoyed this humor article. As always, do not take this too seriously.

P.S. If you have other cool ideas how the BDSM home-entertainment package can be enhanced, please send them to me and I’ll have them included in this fine article.


Here’s what YOU had to say … totally unedited, as good or bad as your ideas may be.

Raph suggests the following

After every reboot, you get another one for free. The more the merrier!

Patches are installed automatically, every single one, even though you do not need. And then, you machine is rebooted without any warning. Editor’s note: wait, isn’t this how Microsoft Windows works anyhow?

Users are mildly electrocuted when whey they search Google for a website address they already know.

Eleno suggests the following

Random blue screens of death. Editor’s note: This is a built-in feature already.

Flashing green screen of death specially designed to induce seizures.

The operating system asks for passwords every 15 minutes. Passwords must be at least 30 characters in length. If you fail to authenticate, the machine restarts, a siren sounds and the user is electrocuted. This is a security feature, of course. Editor’s note: And it combines nicely with the reboot policy listed by Raph and the multimedia headset.

BDSM narrates everything it does in the most obnoxious voice possible. Editor’s note: And what would that voice be?

BDSM randomly remaps the keyboard on every machine start, allowing you only sixty seconds to memorize the changes before logging in.

What do you have to suggest? Well, send your mail and let me know.