We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.
WibuScript
WibuScript is an esoteric programming language and multi-dialect JavaScript transpiler created in 2026 by Aplikat (Rafli161102). Designed to bridge Japanese anime tropes, otaku culture, and Indonesian internet meme culture into modern software development, WibuScript translates stylized pseudo-Japanese and Indonesian internet slang into standard, high-performance ECMAScript.
| Designed by | Aplikat |
|---|---|
| Appeared in | 2026 |
| Computational class | Unknown |
| Reference implementation | GitHub repository |
| File extension(s) | .wibu |
Overview
Unlike many joke languages that are intentionally unusable or limited to stack machines, WibuScript is Turing-complete, feature-rich, and compiles directly to modern JavaScript. It includes a complete Lexer, Parser (AST generator), Transpiler, and interactive REPL, with runtime support for standard data structures, asynchronous operations, file I/O, error handling, and object-oriented programming.
WibuScript features four canonical dialects with 100% syntactic and semantic parity. A program written in any dialect executes with identical behavior, and code written across different dialects can even be mixed within the same source file.
Dialects
The four official dialects of WibuScript are:
- Jepang Murni (Pure Japanese): Romanized Japanese keywords providing a formal anime/manga atmosphere.
- Jepang Singkat (Short Japanese): Compact, abbreviated keywords optimized for concise typing and competitive coding.
- Wibu Absurd (Absurd Weeb): Highly expressive dialect based on contemporary Indonesian anime community slang and otaku expressions.
- Meme Rongawi (Rongawi Meme): Humorous and satirical dialect drawing from Indonesian surreal internet humor and Rongawi subculture.
Keyword Comparison Table
| Meaning / Construct | Pure Japanese | Short Japanese | Absurd Weeb | Meme Rongawi |
|---|---|---|---|---|
| Variable declaration (var/let) | kore |
ko |
iniDesu |
pokmipokmi
|
| Constant declaration (const) | zettai |
ze |
zettaiDa |
bundarahma
|
| Function definition | jutsu |
ju |
mybini |
fufufafa
|
| Return statement | kaesu |
kae |
haiBeri |
kandabahlil
|
| Conditional: If | moshi |
mo |
moShiKalo |
izintampil
|
| Conditional: Else If | soretomo |
sore |
soredemoNe |
wowok
|
| Conditional: Else | hoka |
ho |
shoganaiNe |
woijawa
|
| While loop | zutto |
zu |
zuttoLoop |
nyawit
|
| Loop break | yame |
ya |
yameteKure |
bijisatu
|
| Loop continue | tsugi |
tsu |
tsugiNe |
ambatukam
|
| Await (Async) | matte |
mat |
matteNe |
admindatang
|
| Try block | kokoromi |
koko |
yatteMiyo |
ragnamok
|
| Catch block | yurusu |
yuru |
gomennasai |
amanBos
|
| Finally block | subete |
sube |
zenbuNe |
thugshaker
|
| Class declaration | sekte |
sek |
nakama |
sektejomok
|
| Constructor | tanjou |
tan |
umareta |
ambatunat
|
| Instantiation (new) | atarashii |
ata |
atarashiiNe |
ambatumbas
|
| Inheritance (extends) | keishou |
kei |
kouhaiDesu |
jalurhukum
|
| Self-reference (this) | jibun |
ji |
oreSama |
lanangmas
|
| Print / Output | mite |
mi |
iuYo |
salamkenal
|
| Print Line | kuchiMite |
km |
omaeWaIu |
cawapresin
|
| Boolean: True | hontou |
hon |
hontouNi |
unjukkebolehan
|
| Boolean: False | uso |
uso |
chigauYo |
keracunanmbg
|
| Null / Nil | munashi |
mu |
naniKore |
blukutuk
|
Examples
Hello, world!
All four dialects support printing output to standard output:
- Pure Japanese
mite("Konnichiwa Sekai!")
- Short Japanese
mi("Konnichiwa Sekai!")
- Absurd Weeb
iuYo("Halo Dunia Wibu!")
- Meme Rongawi
salamkenal("Sugeng Rawuh ing Donya Rongawi!")
Truth-machine
A standard esolang benchmark Truth-machine implementation:
- Pure Japanese
kore inputVal = 1
moshi (inputVal == 0) {
mite(0)
} soretomo (inputVal == 1) {
zutto (hontou) {
mite(1)
}
}
- Absurd Weeb
iniDesu inputVal = 1
moShiKalo (inputVal == 0) {
iuYo(0)
} soredemoNe (inputVal == 1) {
zuttoLoop (hontouNi) {
iuYo(1)
}
}
FizzBuzz
FizzBuzz implemented in Pure Japanese:
kore i = 1
zutto (i <= 100) {
moshi (i % 15 == 0) {
mite("FizzBuzz")
} soretomo (i % 3 == 0) {
mite("Fizz")
} soretomo (i % 5 == 0) {
mite("Buzz")
} hoka {
mite(i)
}
i = i + 1
}
Object-Oriented Programming
Demonstrating classes, constructors, methods, and inheritance:
sekte Pendekar {
tanjou(nama, klan) {
jibun.nama = nama
jibun.klan = klan
jibun.chakra = 100
}
status() {
kaesu "[Pendekar: " + jibun.nama + " | Klan: " + jibun.klan + "]"
}
latihan(jam) {
jibun.chakra = jibun.chakra + (jam * 10)
mite(jibun.nama + " berlatih. Chakra: " + jibun.chakra)
}
}
sekte Kage keishou Pendekar {
tanjou(nama, klan, gelar) {
jibun.nama = nama
jibun.klan = klan
jibun.chakra = 500
jibun.gelar = gelar
}
jurusPemberantas() {
jibun.chakra = jibun.chakra - 50
mite(jibun.gelar + " " + jibun.nama + " Rasengan! Chakra: " + jibun.chakra)
}
}
kore naruto = atarashii Kage("Naruto", "Uzumaki", "Hokage")
mite(naruto.status())
naruto.jurusPemberantas()
naruto.latihan(2)
Computational Class
WibuScript is Turing complete. It provides arbitrary mutable variables, arithmetic operations, conditional branching, recursion, unbounded while-loops, dynamic arrays, and first-class functions. Any program expressible in JavaScript can be directly modeled and executed in WibuScript.