why = 0 | why? = 1 | the language that questions everything
WHY is a Turing-complete esoteric programming language with 8 tokens. It works like Brainfuck — a tape of memory cells and a pointer — but every instruction is an existential question.
| Token | Brainfuck | Action |
|---|---|---|
why |
< |
Move pointer left |
why? |
> |
Move pointer right |
why; |
+ |
Increment current cell |
why! |
- |
Decrement current cell |
Why |
. |
Output cell as ASCII char |
Why? |
, |
Input one character |
Why! |
[ |
Loop start (skip if cell = 0) |
WHY |
] |
Loop end (jump back if cell ≠ 0) |
why; why; why; why; why; why; why; why; Why! why? why; why; why; why; Why! why? why; why; why? why; why; why; why? why; why; why; why? why; why why why why why! WHY why? why; why? why; why? why! why? why? why; Why! why WHY why why! WHY why? why? Why why? why! why! why! Why why; why; why; why; why; why; why; Why Why why; why; why; Why why? why? Why why why! Why why Why why; why; why; Why why! why! why! why! why! why! Why why! why! why! why! why! why! why! why! Why why? why? why; Why why? why; why; Why
| File | Description |
|---|---|
why.exe |
WHY language interpreter (Windows) |
why_lang.c |
Interpreter source code (C) |
whyc.exe |
WHY binary encoder/decoder |
whyc_win.c |
Encoder source code (C) |
hello.why |
Hello World in WHY |
why hello.whygcc -O2 -o why why_lang.c
gcc -O2 -o whyc whyc_win.cWHY has two personalities:
- Esoteric language (
why.exe) — write real programs using the 8 tokens above - Binary encoder (
whyc.exe) — encode ANY file towhy/why?binary representation
Any Brainfuck program can be converted to WHY by substituting symbols. WHY is Turing complete.
Created with chaos and zero regret.