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.

Pride

From Esolang
Jump to navigation Jump to search
PRIDE
Paradigm(s) imperative, stack-based
Designed by User:Las-r
Appeared in 2026
Computational class Unknown
Major implementations GitHub
File extension(s) .rid

PRIDE is a stack-based esolang that works on bits / booleans made by Nayif Ehan in 2026. It is very loosely based off Forth and Brainfuck, though most similarities are coincidental.

More info can be found on PRIDE's GitHub repo.

Syntax

PRIDE operates entirely on a stack that holds boolean values (`True` or `False`). The stack is initialized with a single `False` value. Data processing (such as working with text or integers) is achieved by treating groups of 8 boolean bits as standard bytes.

The language contains 15 commands. Any character not defined in the table below is treated as a comment and ignored by the interpreter.

Stack Manipulation

Command Name Description
* Duplicate Duplicates the top value of the stack and pushes it.
@ Rotate 2 Moves the 2nd item from the top to the very top of the stack.
# Rotate 4 Moves the 4th item from the top to the very top of the stack.
$ Rotate 8 Moves the 8th item from the top to the very top of the stack.
- Pop / Delete Removes the top value from the stack. If the stack becomes entirely empty, it automatically resets to a single False.

Logical Operators

Command Name Description
! NOT Pops the top value, inverts it (True -> False, or vice versa), and pushes the result.
& AND Pops the top two values, performs a logical AND, and pushes the result.
| OR Pops the top two values, performs a logical OR, and pushes the result.
^ XOR Pops the top two values, performs a logical XOR (Exclusive OR), and pushes the result.

Control Flow

PRIDE utilizes a conditional execution loop based on the truthiness of the top stack value.

Command Name Description
[ Conditional Skip Forward Checks the top value of the stack. If it is True, the execution pointer skips forward past the matching ].
] Conditional Jump Backward Checks the top value of the stack. If it is False, the execution pointer jumps backward to the matching [.

Input / Output (I/O)

Command Name Description
, Output Bit Prints the top stack value as an integer (1 for True, 0 for False) without a newline.
. Output Character Reads the top 8 values of the stack, reverses them into standard binary order, converts the resulting byte to an ASCII character, and prints it. Note: This does not pop the values.
/ Output Newline Prints a blank newline to the console.
? Input String Reads a string from standard input. Every character is converted to its 8-bit binary representation (left-to-right) and pushed onto the stack as booleans.

Examples

More examples can be found on GitHub.

Hello World

***!*!**!*!.
--------
!*!*!*!**!*.
--------
**!**!*!*..
--------
!****!*!**!.
--------
*****!*!*.
--------
!***!*!*!*!*!.
--------
!****!*!**!.
--------
*!*!**!***!.
--------
**!**!*!*.
--------
**!*!**!**!.