pointer-ng
pointer-ng is an extended version of Brainfuck by Maximilian Krause (aka fucketh1cs) who also wrote an interpreter for it. pointer-ng is a superset of Brainfuck, therefore every Brainfuck code is valid in pointer-ng as well. However, pointer-ng offers several more features which make coding in Brainfuck a little easier. The added features contain for example networking, IO and randomness.
pointer-ng Commands
| Symbol | Feature |
|---|---|
| <>+-.,[] | Brainfuck equivalent. |
| | | Opens or closes a comment. Spaces however are not permitted within a comment. Use underscores _ instead. |
| ~ | Switches [dir] from home directory to script startup path or the other way for the commands accessing the IO filesystem. |
| # | Reads [dir]/input.ptng and puts all the content in the cells to the right. The pointer is set to the end. |
| $ | Appends the content of the current cell into [dir]/output.ptng. |
| v | Downloads the content from the URL in [dir]/inurl.ptng and writes all the content in the cells to the right. The pointer is set to the end. |
| ^ | Sends a POST header with the content output:[current cell value] to the URL in [dir]/outurl.ptng. |
| * | Performs the operation [right cell]=[current cell]*[left cell]. |
| / | Performs the operation [right cell]=[current cell]/[left cell]. |
| " | Performs the operation [right cell]=[current cell]+[left cell]. |
| ' | Performs the operation [right cell]=[current cell]-[left cell]. |
| % | Performs the operation [right cell]=[current cell] mod [left cell]. |
| ! | Performs the operation [right cell]=[current cell]*10. |
| ? | Performs the operation [right cell]=floor([current cell]/10). |
| & | Zeroes the current cell. |
| @ | Puts a random number between (incl.) 0 and (incl.) 10 into the current cell. |
| _ | Performs the operation [current cell]=-1*[current cell]. |
| : | Prints the content of the current cell as an integer. |
Example Code
Calculate (5+5)*10 and output the result:
+++++>+++++">!>:
Take two inputs and print the sum (up to 127):
+++++++++++!>.&<&+:&+++++!>++++++++.&<&+++!>++.&<&;>+++++++++++!>.&<&++:&+++++!>++++++++.&<&+++!>++.&<&;>+++++++++++!>++++.&<&+++++!>++++++++.&<&+++!>++.&<&<">:
Interpreters
Official interpreter (Java needed)
Download: https://www.dropbox.com/s/hcm80qvwcw59m5q/pointer-ng.jar?dl=0
Source: https://github.com/fucketh1cs/pointer-ng
Usage: java -jar pointer-ng.jar [*.ptng script]