Nice

From Esolang
Jump to navigation Jump to search
Designed by PoptartPlungerBoi (Original author) cinnamony (Original author) Xi-816 (logo of new version) None1 (images of new version)
Appeared in 2023
Computational class Turing complete
Major implementations Implemented (Wiki) Unimplemented (Other Websites)
File extension(s) .png.jpg
The title of this article is not correct because of technical limitations. The correct title is actually .

(Pronounced as how Michael Rosen pronounced it, and not to be confused with NICE, written normally) is an esolang created by User:PoptartPlungerBoi and User:Cinnamony in 2023. This esolang uses "memes" to make a program. To make a program, MS Paint is used with images using Copy+Paste. As of June 2023, there are no interpreters for yet.

Brief History

June 2023

This esolang is created by User:PoptartPlungerBoi and User:Cinnamony in June 2023.

August 2023

User:Ais523 found that the images used in the original language caused copyright violation, as such, these images are deleted.

September 2023

User:Xi-816 created a new, public-domain logo for , after that, User:None1 tried to replace the images in with images by himself based on the text.

August 2024

User:PoptartPlungerBoi resumes operation in the esolang, reviving the keyword images to original drawings. He then formed the Nice Group, an esolang organization named after the esolang itself made to develop more interesting esolangs. He finished the reworking of the entire esolang on 14 August 2024.

Diagram

The direction of the esolang is the typical up-to-down running movement. As in the diagram shown, the memes are connected by a line to make the output.

Keywords

Start

  • Start, used to start the program.

Output

  • Output, used to print any integer, value and character.

Diagram: (Prints AB C)

Unlike the rest of the program, the Output keyword uses red lines instead of black. (as seen in diagram) The looks at each red line differs the use.

  • Line - Start/Character seperator
  • Box - Character
  • Curvy line - Squeeze space (does nothing to the code, but saves space)
  • Zigzag line - New line
  • Circle with X - End

Repeat

  • Repeat, used to repeat the code to any number.

Diagram:

Just like the Output keyword, the Repeat keyword uses colored lines, but blue, and creates a bubble. (as seen in diagram) the blue box refers to how many time the script in the blue bubble should repeat. Inside of the blue bubble could be any script, just without the start or stop keywords.

If Then

  • If Then, used to make a statement with a hypothesis in which that is followed by a conclusion.

Diagram:

The lines are shown in purple. Just like the Repeat keyword, It forms a bubble. This time, there is a big gap at the right. the input box can be anything.

If Then Else

  • If Then Else, same as If Then, but also gives an option that is the polar opposite of said keyword.

Diagram:

It's the same with the previous keyboard, but with an "Else" purple box placed at the bottom. Any code can be put inside the bubble.

Ask

  • Ask, used to tell the programmer to ask anything.
  • Answer block, normally used in if's

Variables

  • Set variable, used to set and store a number in a variable
  • Change variable, used to change the stored number in the current variable
  • Variable node, used to put the variable in any bubbles or boxes (output)

Diagram:

The lines are shown in yellow. To store numbers, the digits must be in the rhombus.

Operations

  • Operations, used to calculate and change integers

Types of Operations:

  • Add, used to add numbers
  • Subtract, used to subtract numbers
  • Multiply, used to multiply numbers
  • Divide, used to divide numbers
  • Modulo, used to find the remainder when one integer is divided by another
  • Round, used to round the given number to the nearest integer
  • Rational, used to perform a specified function on a given number and reports the result
  • Less than/Better than/Equal, used to calculate which number is higher, lower, or equal than the other
  • Or/And, used to compare more conditions
  • Not, used to return the opposite value of the input, reversing its value

Event

  • Event, similar to the If Then and the If Then Else keywords but it can be activated at any time.

Diagram:

Just like the If Then and the If Then Else keywords, the lines are purple. this time, the bubble must be below the meme. Any script can be inside the bubble to activate an event.

Comment

  • Comment, used in the program for info and to be ignored by the code. This is the only keyword that has a unique shape, being a lightning bolt.

Stop

  • Stop, used to stop the program.

Hello, world!

One Time Cat

Truth-machine

Other