Whitespace Encoded Binary codec challenge

Whitespace encoded binary (WEB) is a codec for encoding bytes to whitespaces and decoding whitespaces to bytes. The original specification is available only in Arabic, but an English pseudo-specification is provided below.

The challenge is to create the most compact WEB-compliant executable of any language.


The goals of the challenge are:

  • Having fun.
  • Having an excuse to code in your favorite programming language.
  • Gaining experience.
  • Having the ability to handout blank papers to supervisors and drive them crazy.
  • Gathering a collection of WEB-compliant coders in all programming languages.


  • Encoding/Decoding must encode/decode the least significant bit first for each byte.
  • Encoder/decoder must not limit input size (should process input on the fly).
  • Encoded output must contain only spaces and tabs: 0’s become spaces (‘ ‘); 1’s become tabs (‘\t’).
  • Decoder should quietly ignore any input other than spaces and tabs.

And preferably:

  • Input/Output utilizes the standard IO streams (stdin/stdout).

For further explanation, please read the first part of this blogpost.


All geeks are welcomed to participate. If you’d like to take part, just heed to the specification.

All WEB-compliant submissions coded with unused languages for the first time will be accepted  and will be promoted on this page will never be removed*. Submitting a program written in a language that has already been used will be promoted iff the submission is not only WEB-compliant, but more compact as well. Any submission that gets promoted here will never be removed*.

As for submissions, please contact me by email with the sourcecode encoded in WEB attached.

* Submissions will never be removed intentionally.

Hall of fame

Here’s a list of the most compact WEB-compliant coders.

Yes, sourcecodes are WEB encoded, you’ll have write your own decoder in order to get the original! However, if you are incapable of programming, contact me and I’ll gladly send my original sourcecode to you.


3 Responses to “Whitespace Encoded Binary codec challenge”

  1. […] sigtermer covered that and bunch of other stuff in an Arabic “specification” he wrote (English pseudo-specification by me). Encoding begins with the least significant bit of the byte; from right to […]

  2. […] English version here. […]

  3. I do not even know how I ended up right here, however
    I assumed this post was great. I don’t recognise who you are however definitely you’re going to a well-known blogger if you are not already.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: