Talk:Bubbles

From Esolang
Jump to navigation Jump to search

This language was designed by the unofficial Esolangs Discord, but we don't own it. Feel free to contribute your ideas. IFcoltransG (talk) 23:17, 6 December 2019 (UTC)

Ideas

I've got some ideas for how to expand this language.

  • Condition format

Example: "0 # 30 || #42"
Wrap the condition in quotes. # X means the number of bubbles is less than X, X # is greater than X, #X means equal to X. ||, &&, and ! work as logical OR, AND, and NOT.

  • I/O

Input could receive one character, take its codepoint, and blow that many empty bubbles into the current bubble. Output could count the number of bubbles in the current bubble, use it as a codepoint, and output that character. Both of these would have their own commands (perhaps , and . from Brainf***, or ? for input and / for output).

  • Clarifying explanations

The {...} needs some clarification. Here's how I might write it:
"For each bubble B inside the current bubble, temporarily sets the current bubble to B and runs the enclosed commands. After each bubble has been iterated through, the current bubble goes back up one level. If B is popped, that ends that iteration and continues to the next bubble."

  • Errors?

What happens if you pop the outermost bubble? I would recommend that give an error message. --Monochromeninja, Python programmer (talk) 12:21, 1 June 2021 (UTC)

About the conditional format, you probably wouldn't need the && or the ! if you can combine ranges like that. The output could certainly work, but it could get unwieldy to count up codepoints for the input. Philosophically, I feel as though if you could output at any point in the program, that would go against the idea that you can only communicate with the outside world by popping the current bubble. That's why I suggested a possible alternate behaviour for popping the outermost bubble, in the I/O section. {...} definitely needs clarification, especially now that the language isn't so loosely defined. IFcoltransG (talk) 00:39, 17 April 2022 (UTC)