functionaI
Jump to navigation
Jump to search
- Not to be confused with Functional.
| Paradigm(s) | Functional |
|---|---|
| Designed by | User:kiken |
| Appeared in | 2023 |
| Computational class | Turing complete |
| Reference implementation | Unimplemented |
| File extension(s) | .functionai, .functlon |
functional (with a capital I) is an esolang made by kiken that uses nameless functions. The capital i may look like a lowercase L in sans-serif fonts.
Syntax and overview
functionaI has an unbounded tape and uses nameless functions which are identified by their argument count. Other characters other than ( or ) are ignored.
Basics
A function without arguments returns 0:
() # Returns '0'
This returns 1:
(()()()()()()())
because 0 ^ 0 ^ 0 ^ 0 ^ 0 ^ 0 ^ 0 is 1.
Functions
| Argument count | Function |
|---|---|
| 0 | Returns 0
|
| 1 | Sets the cell pointer to the first argument. |
| 2 | For no other reason other than to be able to make a quine, print (()()).
|
| 3 | While the first argument ≠ second argument, execute the third. |
| 4 | Move the pointer left by the first argument, then second, third and fourth args. |
| 5 | Move the pointer right by first arg, second, third, fourth and fifth. |
| 6 | Returns the cell at the pointer. Ignores all arguments (for some reason.) |
| 7 | Returns first arg ^ second ^ third ^ fourth ^ fifth ^ sixth ^ seventh. |
| 8 | Get user input as a char. Ignores all args (again). |
| 9 | Print all args as a char. |
| 10 | Returns first arg + second + third + fourth + fifth + sixth + seventh + eighth + ninth + tenth |
| 11 | Returns first arg - second - third - . . . - tenth - eleventh |
Grouping
Code can be inserted as a single argument by using [ and ], like this:
[ code ]
Examples
Cat program
(
()(()()()()()()())
[(
(()()()()()()()())
()()()()()()()()
])
)
Quine
(()())
Hello, world! (actually just prints 'H')
(
((
(
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
()()
)
(
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
()()
)
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
))
((
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()()())
(()()()()()())()
))
(
(()()()()()()()())
()()()()()()()()
)
)
Proper hello, world!
(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()[((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()()())()()())(((()()()()()())(()()()()()()())()()()()()()()))])((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()[((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()()())()()())(((()()()()()())(()()()()()()())()()()()()()()))])((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())((()()()()()())()()()()()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()[((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()()())()()())(((()()()()()())(()()()()()()())()()()()()()()))])((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))((()()()()()())()()()()()()()())((()()()()()()())()()())((()()()()()()())()()())((()()()()()()())()()())((()()()()()()())()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())((()()()()()()())()()()())((()()()()()()())()()()())((()()()()()())()()()()()()()())(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))((()()()()()())()()()()()()()())(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))(((()()()()()())(()()()()()()())()()()()()()()))((()()()()()())()()()()()()()())((()()()()()()())()()()())((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))((()()()()()())()()()()()()()())
99 bottles of beer
Too big to display here. Execute this Python 3 script instead:
print("""+>+++++++[>>>+++
+++++<<<<+++++
+++>-]+++++++++>>>
+>>++++++++++[>+
+++++++++<-]>[
>>+>+>+>+>+>+>
+>>+>+>>+>+>+>
+>>+>+>>+>+>+>
>+>+>+>+>>>>>+
>+>+>+>>+>+>+>
>+>+>+>+>>+>+>
+>>+>+>+>+>>+>+>
>+>+>+>+>+>+>>>>
+>+>>+>+>+>+<<<<
<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<
-]<++++[>++++++++<
-]>[>+>>>>>>>>+>>>
+>>>>>+>>>+>>>>+>>
>>>+>+>>+>>>>>+>>>>+
>>>>>+>>>>+>>>>>+>>>
+>>>>>>>+>+>+>>>+>>>
>>+<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<-]+++++[
>>>++>+++>+++>++>>+++>>++>
>>>>>+++>>++>++>>+++>+>>>+++
+>->++>++>++>+++>++>>--->->+>>>+
+>++>>>>++>++++>++>>->++>>>++>->++
+>+++>>+>+++>>>+++>++>+++>++>>>++>>++>
++>>++>++>+++<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<-]>>-->+>+>+>-->+>>>+>++>>-->+>+>->>+>>>
+>->+>>->++>-->-->++>->>>->++>++>+>>+>>+>>>+
>->>>++>>>>++>++>>>>>+>>++>->+>++>>>>+++>>>+>>
->+>->+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[>>>>++
++++++++[->[-]+>[-]<<[<<<<<.>>>>.>>>>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>
>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<.>>>>.>
>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>>>>>>>>>>>>
.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<.>>>>-.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>>.>..<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<-]>[<<<<<->[-]+>[-]<<[<.>>>>.>>>>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>>>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<.>>>>.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>>>>
>>>>>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<-.>>>>+++++++++.>>>>.>.>.>.>.>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>.>..<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-]>[<<.>>>>.>>>
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>>>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<.>>>>.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>
>>>>>>>>>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<+++++++++.>>>>.>.>.>.>.>.>.>.>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>.>..<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<->]<<+>>>>>->]<<]<<<<
-]>>>>++++++++[->[-]+>[-]<<[<.>>>>.>.>.>.>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>.<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<.>>>>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>>>>>>>>>>>>>>.>.>>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-.>>>>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>
.>>.>..<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-]>[<<.>>
>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>
.>.>.>.>.>.>>>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>>>>>>>>
>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<-.>>>>.>.>.>.>.>.>.>>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>>.>..<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<->]<<]<.>>>>.>.>.>.>.>.>.>>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>>>.<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<.>>>>.>.>.>.>.>.>.>>.>.>.>.>.>.
>.>.>>>>>>>>>>>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>.>""".replace("+","(((()()()()()())(()()()()()()())()()()()()()))").replace("-","(((()()()()()())(()()()()()()())()()()()()()()))").replace("<","((()()()()()()())()()())").replace(">","((()()()()()()())()()()())").replace("[","((()()()()()())()[").replace("]","])").replace(".","((()()()()()())()()()()()()()())").strip(" ").strip("\n").strip("\r").strip("\t"))
Truth machine
((()()()()()()())()()()())((()()()()()()())()()()())((()()()()()()())()()()())((()()()()()()))((()()()()()())()()()()()()()())((()()()()()())()[((()()()()()())()[(((()()()()()())(()()()()()()())()()()()()()()))((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()))((()()()()()()())()()())((()()()()()()())()()())(((()()()()()())(()()()()()()())()()()()()()))((()()()()()()())()()()())])((()()()()()()())()()()())(((()()()()()())(()()()()()()())()()()()()()()))])((()()()()()()())()()())((()()()()()()())()()())((()()()()()()())()()())((()()()()()())()[((()()()()()()())()()())((()()()()()()())()()())])((()()()()()()())()()()())((()()()()()())()[((()()()()()())()()()()()()()())])
Computational class
kiken believes that functionaI is turing-complete. The proof can be shown from a direct translation to brainfuck:
| functionaI | brainfuck |
|---|---|
(((()()()()()())(()()()()()()())()()()()()())) |
+
|
(((()()()()()())(()()()()()()())()()()()()()())) |
-
|
((()()()()()()())()()()) |
<
|
((()()()()()()())()()()()) |
>
|
((()()()()()())()[ |
[
|
]) |
]
|
I/O translation:
| functionaI | brainfuck |
|---|---|
((()()()()()())()()()()()()()()) |
.
|
((()()()()()())) |
,
|
Implementations
Currently unimplemented.