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.
Miny
Jump to navigation
Jump to search
Miny is an esolang based on 1-register Minsky machine developed by User:ChuckEsoteric08.
Specification
The language has a single register, with a value 1 at the start of a program and two instructions
*n- multiply register by an integern. Multiplication by 0 is Unidentified behaviour(n:abc/xyz)- try to divide register by an integern. If it is divisible then divide and execute codeabc, else executexyz
Program is in an infinite loop.
Computational class
The language is Turing complete since it is possible to trivially translate various kinds of counter machines into it. The most efficient one is described here:
- Each counter of a Minsky machine as well as well as each instruction of Minsky machine are given a unique prime number and all are represented inside the register using Gödel numbering
- The code looks like this (
inst1,inst2and ect. are prime numbers that are given to instructions 1, 2 and ect.):
(inst1:.../(inst2:.../(inst3:.../...))
With last instruction n being (instn:.../*inst1)
- Increment instruction which jumps to instruction
yafter incrementing,instx INC regx insty, is(instx:*regx*insty/...) - Decrement instruction which jumps to instruction
sif succesful andfif failed,instx DEC regx insts instf, is(instx:(regx:*insts/*instf)/...) - Halting is simple, becoming
(instx:*instx/...)