ZecZec
- The title of this article is not correct because of technical limitations. The correct title is actually >|<>|<.
>|<>|< is a language made by User:BODOKE2801e here's all the things (n is a number, . is a string, and .- is a boolean, also the amount of dots is the ID of the variable/boolean):
Syntax
Here's the syntax:
| Code | Name | Description |
|---|---|---|
| (.) | Prints . | |
| (.<.->) | Print Conditional | Prints . if .- is true |
| (.>)> | Print and jump | Prints . and jumps the next command |
| (.)<.-> | Print and jump conditional | Prints . unconditionally and jumps the next command if .- is true |
| (.<.->>)> | Print conditional and jump | Prints . if .- is true and jumps to the next command unconditionally |
| (<.->.>)> | Print conditional and jump conditional | Prints . and jumps the next command if .- is true |
| Code | Name | Description |
|---|---|---|
| n> | Jump n times | Skips the next n commands |
| >> or >| | End | Ends the program |
| <n | Go back n times | Goes back n times |
| << | Go to the start | Goes to the start |
| n>?<.-> | Jump conditional | Jumps n times if .- is true |
| <n?<.-> | Go back conditional | Goes back n times if .- is true |
| Code | Name | Description |
|---|---|---|
| <.-+.-.> | And | none |
| <.-*.-.> | Or | none |
| -<.-> | Not | none |
| -<.-+.-.> | Nand | none |
| -<.-*.-.> | Nor | none |
| <.-^.-.> | Xor | none |
| -<.-^.-.> | Xnor | none |
| >.>|<< | Greater | Checks if . is greater than the last storage, then grabs the one which is higher (via unicode) |
| >.<|<< | Less | Checks if . is less than the last storage, then grabs the one which is lower (via unicode) |
| <.> | Storage | Stores . , When the marker has a value and passes through a storage, it will swap the stored thing, even if the storage has nothing |
| /.=..?/ | Equal? | Throws -* if its the same, *- else |
| Code | Name | Description |
|---|---|---|
| >|< | Intake | Intakes the input thing, also deletes the held item, even if there's no more input |
| ><.->< | Intake conditional | Intakes the input thing if .- is true |
| / | Escape | Escapes a character after it |
| -* | True | Boolean |
| *- | False | Boolean |
| |< | Last storage | Checks the last storage it met, if there's none, it's automatically *- |
| , | Separate | Separates stuff |
| >?< | Contain | Boolean that throws -* if the marker has a thing |
| ?< | Storage Contain | Boolean that throws -* if the last storage has a thing |
| (?<.->(.)(..)) | If then else | If .- is true gives . , else, .., note that . and .. can be pieces of code, where each comma is escaped, (i.e >|</, >|<) |
| >/.<>../< | Funnel | joins . and .. together |
| >/-/.?=..< | Contain? | checks if . contains .., throws -* is it does, *- else |
| >/++/.?=..< | Amount contained | checks how many times . contains .. |
| />.|--(..) | Repeat | Repeats . .. times, once activated, .. decrements untill it reaches 0, note that . is a command instead of text |
| (-/.) | var | variable . |
| .= (-/..) | set var | sets variable .. to . |
| .+ (-/..) | change var | changes variable .. by ., note that it is in base of the highest character + 1. (but if it's only numbers it's always base 10) |
| (?< | Marker contains | outputs whatever the marker contains, |
| )./,../,...) | list | produces a list, note that it's length can be customized |
| .=/../... | regex | produces a list of regex matches, ... are the flags |
| |n-.| | Select nth | Picks the nth item, else, picks the nth letter |
| |.+/+..| | Add | adds . and .. together in base of the highest character + 1, then to base 10 (but if it's only numbers it's always base 10) |
| |.-/-..| | Subtract | subtracts . and .. together in base of the highest character + 1, then to base 10 (but if it's only numbers it's always base 10) |
| |.*/*..| | Multiply | Multiplies . and .. together in base of the highest character + 1, then to base 10 (but if it's only numbers it's always base 10) |
| |.|/|..| | Divide | Divide . and .. together in base of the highest character + 1, then to base 10 (but if it's only numbers it's always base 10) |
| ).( | Round down | Rounds . down |
Notes
You can use newlines instead of commas if its too long
It takes last to first
Still not turing complete, at the talk page, request ideas and i will add more syntax to make it turing complete
it looks like bf
Examples
Hello, world!
(Hello, world!)
Infinite loop
Prints "Hello, world!" forever.
(Hello, world!), <<
Input check
Throws "True" if there's something in the input, else, "False"
>|<, ((?<>?<>(True)(False)))
If the input has "", it gives
False
Else, if it has anything, like "Foo", it gives
True
last input
Outputs the last input
>|<, <>, <1?<?<>, (|<)
If the input has "000, 001, 010, 011, 100, 101, 110, 111", it gives
000
Or a much simpler one, "Foo, Bar" gives
Foo
Fibonacci numbers
Outputs the fibonacci numbers
(1), (1), 1= (-/a), 1= (-/b), (-/a)+ (-/c), (-/b)+ (-/c), ((-/c)), (-/b)= (-/a), (-/c)= (-/b), 0= (-/c), <6
Output: "1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986, 102334155..."
Truth-machine
Outputs 1 infinitely when the input is 1
>|<, ((?<), <1?<|<=1?/>/
FizzBuzz
Outputs "Fizz" if divisible by 3, "Buzz" if divisible by 5, "FizzBuzz" when both, the number else
0= (-/a), (-/a)= (-/b), ((-/b)) 1+ (-/a), (/?</|(-/a)|/|15|=)|(-/a)|/|15|(?>(FizzBuzz= (-/b)/, <2)()), (/?</|(-/a)|/|5|=)|(-/a)|/|5|(?>(Buzz= (-/b)/, <3)()) (/?</|(-/a)|/|3|=)|(-/a)|/|3|(?>(Fizz= (-/b)/, <4)()), (-/a)= (-/b), <6
Trivia
>|<>|< can be turned to >|<>|< code which is two intakes
>|<>|< is based off the game Human Resource Machine and 7 Billion Humans, so it takes the input front to back, meaning if the input is "A, B", and you want to output "B", the solution is the following code
>|<, <>, >|<, (|<)