πŸ…ΏπŸ…ΈπŸ…΄πŸ†ƒ

From Esolang
Jump to navigation Jump to search

πŸ…ΏπŸ…ΈπŸ…΄πŸ†ƒ is a programming language inspired by Piet. It is a text-based equivalent of Piet.

Execution

The colors in πŸ…ΏπŸ…ΈπŸ…΄πŸ†ƒ are shown below:

White ⚪ (Unicode 9898)
Light red ❤ (Unicode 10084) Light yellow 🧡 (Unicode 129505) Light green 💛 (Unicode 128155) Light cyan 💚 (Unicode 128154) Light blue 💙 (Unicode 128153) Light magenta 💜 (Unicode 128156)
Red 🔴 (Unicode 128308) Yellow 🟠 (Unicode 128992) Green 🟡 (Unicode 128993) Cyan 🟢 (Unicode 128994) Blue 🔵 (Unicode 128309) Magenta 🟣 (Unicode 128995)
Dark red 🟥 (Unicode 128997) Dark yellow 🟧 (Unicode 128999) Dark green 🟨 (Unicode 129000) Dark cyan 🟩 (Unicode 129001) Dark blue 🟦 (Unicode 128998) Dark magenta 🟪 (Unicode 129002)
Black ⚫ (Unicode 9899)

Black ⚫ (Unicode 9899) and white ⚪ (Unicode 9898) do not fall into either cycle.

You can also use 🖤⬛ for black or 🤍⬜ for white, but please remember that a "black" symbol of one "shape" can not restrict the pointer sliding in a "white" block of another shape, and that a "white" symbol of one shape will restrict the pointer sliding in a "white" block of another shape unless the pointer sees non- "white" symbols on both its left (port) and its right (starboard). Therefore, it is better to just use ⚫ and ⚪ rather than the other "black" or "white" shapes in your program.

Brown (🤎🟤🟫) is considered undefined behavior.

Some compilers may feature an additional symbol, the "grey circle" 🔘 (Unicode 128280). Every time the pointer encounters this grey circle, it randomly decides whether it is treated as ⚫ or ⚪, allowing a "random number generator" to be created.

Some compilers treat ♥ (Unicode 9829) the same as ❤, though this is not recommended.

Newline characters are used to separate lines. It is recommended that all lines in the program be of the same length. If not all lines are of the same length, it is considered undefined behavior, though simply appending ⚫ or ⚪ to the end of the shorter lines may help. Characters not mentioned above at the end of each line are ignored. If such "undefined characters" appears in the middle of a line (or at the beginning), they are either ignored or treated as ⚫ or ⚪, depending on the implementation.

Commands are the same as commands in Piet.

See also