Oya

From Esolang
Jump to navigation Jump to search

Oya is an Esoteric programming language created by User:Buckets in 2024.

Commands Instructions
A+B Given An operation between Two Variable Creating Another variable as the Output.
#D+E->F Given An operation between Two Variable Creating Another variable as the Output As A Rule.
x Export The Variable As Unicode.
m Import A Variable With The Input Number stored Within it.
G ~ Come from Command if Newest variable = 1.
H' ~ Go to Command if Newest variable = 0.

Pre-programmed Operations:

+, -, /, \, *, %, A, B and ?.

Static Variables:

'0' for 0.
'1' For 1.
'M' for The Input from m.

? behaves as If A = B, C will be 1, Else 0.

A behaves as if A = 1, C will be 0, Else 1.

B behaves as if B = 1, C will be 0, Else 1.

\ behaves as Set A to B, C will be B.

Restrictions:

You cannot Use a Variable that has not been listed in A #A+B->C, Except for Pre-programmed Variables such as M, 0 or 1.
All Output commands must Be on differing Lines.

Syntax:

Take The Longest Line of Code from the code And make all other Lines Match Up to that line.

Cat program:

mx

Truth-machine Program:

  #AoB->A+1A+1A+1A+1A+1A+1A+1A+1A+1A+1
                                  mM?0
                                   M?1
2Mo0Mo0Mo0Mo0M+1M+1M+1M+1M+1M+1M+1M+1x
                                    5x
                                     .
1Mo0Mo0Mo0Mo0M+1M+1M+1M+1M+1M+1M+1M+1x

"Hello, World!" Program:

    #AoB->A+1A+1A+1A+1A+1A+1A+1A+1A+1A+1
            O\1Oo0Oo0Oo0Oo0Oo0Oo0Oo0O+1x
      O\1Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0x
                           Oo0O-1O-1O-1x
                                       x
                              O+1O+1O+1x
               O\1Oo0Oo0Oo0Oo0O+1O+1O+1x
      O\1Oo0Oo0Oo0O+1xOo0Oo0Oo0Oo0Oo0Oo0
                        O-1O-1O-1O-1O-1x
O\1Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0Oo0x
                              O+1O+1O+1x
         O-1O-1O-1O-1O-1O-1xO-1O-1O-1O-1
                           O-1O-1O-1O-1x
                        O\1Oo0Oo0Oo0O+1x

A+B Problem:

  #S&S->0
mS\MmS+Mx

NAND gate:

     #S&S->0
mS\MmS*MSAMx