Update SPECIFICATION.MD
This commit is contained in:
		
							parent
							
								
									055c910ab6
								
							
						
					
					
						commit
						145407da41
					
				
							
								
								
									
										121
									
								
								SPECIFICATION.MD
								
								
								
								
							
							
						
						
									
										121
									
								
								SPECIFICATION.MD
								
								
								
								
							| 
						 | 
					@ -12,7 +12,7 @@ In general the paradigms are designed to be: var'aq-like, Interpreted, Distribut
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## What is the purpose of this language?
 | 
					## What is the purpose of this language?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
*zwl* acts as the assembly language for *zwm*. it allows for a user to manipulate the world machine. 
 | 
					*zwl* acts as the assembly language for the universe machine. it allows for a user to manipulate the world machine. 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# *zwl* Grammar and Specification
 | 
					# *zwl* Grammar and Specification
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -50,25 +50,41 @@ a list containing the data of that form
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### bit (or unsigned units)
 | 
					### bit (or unsigned units)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
`u8`, `u16`, `u32`, u64`
 | 
					«hex number» 8  `u` u8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					«hex number» «hex number» 16 `u` u16
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					«hex number» «hex number» «hex number» 32 `u` u32
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					«hex number» «hex number» «hex number» «hex number» 64 `u` u64
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### integer (signed)
 | 
					### integer (signed)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
`i8`, `i16`, `i32`, `i64`
 | 
					«hex number» 8  `i` u8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					«hex number» «hex number» 16 `i` u16
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					«hex number» «hex number» «hex number» 32 `i` u32
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					«hex number» «hex number» «hex number» «hex number» 64 `i` u64
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### real
 | 
					### real
 | 
				
			||||||
 | 
					
 | 
				
			||||||
`f32`, `f64`
 | 
					«hex number» «hex number» «hex number» 32 `f` f32
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					«hex number» «hex number» «hex number» «hex number» 64 `f` f64
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## string
 | 
					## string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
matching `""` for string
 | 
					" «utf8 encoded characters» `"` string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
strings are always utf8, other formats will need to be done manually
 | 
					strings are always utf8, other formats will need to be done manually
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## logical
 | 
					## logical
 | 
				
			||||||
 | 
					
 | 
				
			||||||
`true` / `false`
 | 
					- `true` bool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- `false` bool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### panic
 | 
					### panic
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -90,52 +106,53 @@ syntax
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The following is a list of global operators and their effect:
 | 
					The following is a list of global operators and their effect:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  !
 | 
					comment (looks for another ! to close)
 | 
				
			||||||
    line comment
 | 
					! any raw text here `!` -
 | 
				
			||||||
  !!
 | 
					
 | 
				
			||||||
    block comment (looks for another !! to close)
 | 
					anonymous subtroutine    
 | 
				
			||||||
  { … }
 | 
					{ … `}` subroutine
 | 
				
			||||||
    anonymous subtroutine    
 | 
					
 | 
				
			||||||
  set
 | 
					sets a value in the node's map
 | 
				
			||||||
    sets a value in the node's map
 | 
					`set`
 | 
				
			||||||
  del
 | 
					
 | 
				
			||||||
    delete from node's map
 | 
					delete from node's map
 | 
				
			||||||
  add
 | 
					`del`
 | 
				
			||||||
    addition
 | 
					
 | 
				
			||||||
  sub
 | 
					`add`
 | 
				
			||||||
    subtraction
 | 
					
 | 
				
			||||||
  mul
 | 
					`sub`
 | 
				
			||||||
    multiplication
 | 
					
 | 
				
			||||||
  div
 | 
					`mul`
 | 
				
			||||||
    divisor
 | 
					 
 | 
				
			||||||
  pow
 | 
					`div`
 | 
				
			||||||
    power
 | 
					 
 | 
				
			||||||
  eq
 | 
					`pow`
 | 
				
			||||||
    equal to
 | 
					 
 | 
				
			||||||
  ne
 | 
					`eq`
 | 
				
			||||||
    not equals to
 | 
					 
 | 
				
			||||||
  mod
 | 
					`ne`
 | 
				
			||||||
    modulo
 | 
					 
 | 
				
			||||||
  not
 | 
					`mod`
 | 
				
			||||||
    logical not
 | 
					 
 | 
				
			||||||
  and
 | 
					`not`
 | 
				
			||||||
    logical and
 | 
					 
 | 
				
			||||||
  or
 | 
					`and`
 | 
				
			||||||
    logical or
 | 
					 
 | 
				
			||||||
  nor
 | 
					`or`
 | 
				
			||||||
    logical nor
 | 
					
 | 
				
			||||||
  nand
 | 
					`nor`
 | 
				
			||||||
    logical nand
 | 
					
 | 
				
			||||||
  xor
 | 
					`nand`
 | 
				
			||||||
    logical xor
 | 
					
 | 
				
			||||||
  band
 | 
					`xor`
 | 
				
			||||||
    bitwise and
 | 
					
 | 
				
			||||||
  bor
 | 
					`band`
 | 
				
			||||||
    bitwise or
 | 
					
 | 
				
			||||||
  bnor
 | 
					`bor`
 | 
				
			||||||
    bitwise nor
 | 
					
 | 
				
			||||||
  bxor
 | 
					`bnor`
 | 
				
			||||||
    bitwise xor
 | 
					
 | 
				
			||||||
 | 
					`bxor`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Atom
 | 
					## Atom
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue