Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/JonasDann/Brainfucker
Brainfuck interpreter in C
https://github.com/JonasDann/Brainfucker
Last synced: 2 months ago
JSON representation
Brainfuck interpreter in C
- Host: GitHub
- URL: https://github.com/JonasDann/Brainfucker
- Owner: JonasDann
- Created: 2014-06-27T20:54:04.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-02-22T21:10:49.000Z (almost 8 years ago)
- Last Synced: 2024-04-24T15:35:03.212Z (9 months ago)
- Language: C
- Size: 38.1 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- AwesomeInterpreter - Brainfucker
README
Brainfucker
=========Brainfuck interpreter implemented in C
Usage
-----The programm has one argument that is the file which contains the brainfuck code to implement.
Brainfuck
---------Brainfuck is an esoteric programming language noted for its extreme minimalism. The language consists of only eight simple commands and an instruction pointer. It is a Turing tarpit, designed to challenge and amuse programmers, and was not made to be suitable for practical use. It was created in 1993 by Urban Müller.
Code:
| token | meaning |
|:-----:| ------- |
| > | increment the data pointer (to point to the next cell to the right). |
| < | decrement the data pointer (to point to the next cell to the left). |
| + | increment (increase by one) the byte at the data pointer. |
| - | decrement (decrease by one) the byte at the data pointer. |
| . | output the byte at the data pointer. |
| , | accept one byte of input, storing its value in the byte at the data pointer. |
| [ | if the byte at the data pointer is zero, then instead of moving the instruction pointer forward to the next command, jump it forward to the command after the matching ] command. |
| ] | if the byte at the data pointer is nonzero, then instead of moving the instruction pointer forward to the next command, jump it back to the command after the matching [ command. |Compilation
-----------**Linux:**
To compile under linux you have to link it with the ncurses libary (gcc main_linux.c -lncurses) that has to be installed on the computer.
**Windows:**
To compile under windows just compile the main_windows.c. The windows version uses the standard conio.h header.
Planned features:
------------------ Ook interpreter
- Ook to brainfuck and other way around transpiler