Bedroom

From Esolang
Jump to navigation Jump to search

Bedroom is an esolang made by User:AmNow

Commands

Specification Notes

In Bedroom, the program should look like a messy child’s bedroom. The instruction pointer starts on cell (0,0) and starts moving right.

# 
^ This cell.

Programs must have at least 1 πŸ›. See below.

The actual commands

Command Description
⬆️ Move the instruction pointer up.
⬇️ Move the instruction pointer down.
⬅️ Move the instruction pointer left.
➑️ Move the instruction pointer right.
πŸ› Halt the program.
πŸ“— Increment the current memory cell value by one.
🧸 Decrement the current memory cell value by one.
πŸͺ„ Move the memory pointer one cell to the left.
πŸͺ† Move the memory pointer one cell to the right.
πŸ—„ Prompt the user for an ASCII character and store its character code in the current memory cell.
πŸ—’ Output the ASCII character associated with the current memory cell value.
πŸ“ If the current memory cell value equals 0, turn 90Β° CCW.

Programs

Infinite loop

βž‘οΈβ¬‡οΈπŸ›
⬆️⬅️

Golfed:

βž‘οΈβ¬…οΈπŸ›

Truth-machine

πŸ—„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„β¬‡οΈπŸ›
⬇️πŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§Έβ¬…️
➑️🧸πŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„⬇️⬆️⬇️
⬇️πŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§Έβ¬…οΈβ¬†οΈπŸ—’
➑️🧸πŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„⬇️⬆️⬆️
⬇️πŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§Έβ¬…οΈπŸ—’πŸ“—
➑️🧸πŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„πŸ§ΈπŸͺ†πŸ“—πŸͺ„⬇️πŸͺ†πŸͺ†
⬇️πŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§ΈπŸͺ„πŸ“—πŸͺ†πŸ§Έβ¬…οΈβ¬†οΈπŸ“
βž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβž‘οΈβ¬†οΈ

Cat program

An infinitely repeating cat program is implemented in the following:

⬇️  πŸ›
βž‘οΈπŸ—„πŸ—’πŸ“β¬‡οΈ
⬆️⬅️⬅️⬅️⬅️

Interpreter

  • Common Lisp implementation of the Bedroom programming language. Please note that the concrete character set deployed constitutes a dependency on the Common Lisp implementation; in corollary, Unicode support may or may not be a feature incorporated in the personal environment. The interpreter at hand has been developed and tested with Steel Bank Common Lisp (SBCL) version 1.1.4 as part of the Lisp Cabinet 0.3.5 bundle.