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.

()NEST()

From Esolang
Jump to navigation Jump to search

()NEST() is a very simple two command esolang/Cellular automaton(CA) made by User:Yayimhere when he was bored. Also a ()NEST() program will not halt unless its told to by the code pointer

The logo of ()NEST()

how it works

The code is layed out on a 2d infinite grid, with the program being a subsection of it. theres are three symbols, the standard brackets, and a space(which fills the grid up where its unspecified by the program)

If a ( has a )to the right of it, it will copy itself to also be right after that bracket, with a space added as well:

() -> ()( 

And if a ) Has a ( (note the space) next to it, that will also be copied:

)(  -> )( )

However in the case that there is a ( ) next to it instead, that pair will be moved to below:

)( ) -> )
         ( )

If there however is nothing next to it on the right, it will be copied instead:

()  -> ()
       ()

If this pattern emerges:

()()
()

It will be transformed into:

()( )
   ()

If a ( ) Is moved down onto a () It will encase the ():

( )   ->*moves down*->
   ()                  (())

And if there is a () above a ( )(note the double spaces) It will move up to it:

 () -> (())
(  )

And last but not least if there is a () left to a (()) The outer brackets move down:

()(()) -> () () 
            (  )

It is executed top to bottom left to right, with rules taking relevance from top to bottom. symbols may be overwritten if needed.

examples

Osc(2 step):

()(())

Step 1:

()(())

Step 2:

() ()
  (  )

Step 3:

()(())