Modiv

Modiv is an esoteric programming language created in 2025. It is based on a simple idea: the only memory provided is a single accumulator.
The name Modiv is a blend of the words mod and div, referencing the CJUMP instruction that used to combine both modulus and division operations.
Language Overview
Modiv programs consist of assembly-like commands, arithmetic expressions, and labels.
Commands
SET X - Sets the accumulator to the value of expression X.
CJUMP L X - If X != 0, it and jumps to label L.
JUMP L - Unconditional jump to label L.
AOUT X - Outputs the value of expression X as an ASCII character.
DOUT X - Outputs the value of expression X as a decimal number.
Expressions
Expressions support:
- Literals (e.g., 42)
- Arithmetic operations: +, -, *, ^, /(integer result)
- Keywords:
- acc — the current value of the accumulator
- din — read a decimal value from input
- ain — read an ASCII character from input
- nmod(x) - a the number of times acc can be divided by x without creating a reminder
Labels
A label is defined as:
:labelName
It can be the target of a JUMP or CJUMP.
Example Programs
Echo a single character:
SET ain AOUT acc
Cat
:cat SET ain AOUT acc JUMP cat
XDC random number
DOUT 4
A + B problem
SET (2^din) * (3^din) DOUT nmod(2)+nmod(3)
Computational class
Modiv can be easily mapped to The section 14.2 Minsky machine
Minsky machine Modiv multiply by a SET acc*a check if divisible by a, else branch CJUMP L nmod(a) SET acc/a at L
Implementation
An interpreter was made by the creator of the language (User:Krolkrol), you can see it here https://github.com/Dfgsgh/Modiv