Brainfuck-interpreter

所属分类:人工智能/神经网络/深度学习
开发工具:kotlin
文件大小:0KB
下载次数:0
上传日期:2018-01-27 13:02:38
上 传 者sh-1993
说明:  用于brainfuck编程语言的kotlin解释器。,
(kotlin interpreter for the brainfuck programing language.,)

文件列表:
LICENSE (1070, 2018-01-27)
build.gradle (1279, 2018-01-27)
gradle/ (0, 2018-01-27)
gradle/wrapper/ (0, 2018-01-27)
gradle/wrapper/gradle-wrapper.jar (54706, 2018-01-27)
gradle/wrapper/gradle-wrapper.properties (230, 2018-01-27)
gradlew (5296, 2018-01-27)
gradlew.bat (2176, 2018-01-27)
settings.gradle (43, 2018-01-27)
src/ (0, 2018-01-27)
src/main/ (0, 2018-01-27)
src/main/kotlin/ (0, 2018-01-27)
src/main/kotlin/me/ (0, 2018-01-27)
src/main/kotlin/me/palazzomichi/ (0, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/ (0, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/BrainfuckException.kt (320, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/BrainfuckInterpreter.kt (1627, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/BrainfuckProgram.kt (3337, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/CellIterators.kt (1705, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/main.kt (1228, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/stream/ (0, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/stream/BrainfuckReader.kt (2140, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/stream/BrainfuckWriter.kt (1431, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/util/ (0, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/util/Streams.kt (808, 2018-01-27)
src/main/kotlin/me/palazzomichi/brainfuckinterpreter/util/_BrainfuckInterpreter.kt (2577, 2018-01-27)
src/test/ (0, 2018-01-27)
src/test/kotlin/ (0, 2018-01-27)
src/test/kotlin/me/ (0, 2018-01-27)
src/test/kotlin/me/palazzomichi/ (0, 2018-01-27)
src/test/kotlin/me/palazzomichi/brainfuckinterpreter/ (0, 2018-01-27)
src/test/kotlin/me/palazzomichi/brainfuckinterpreter/test/ (0, 2018-01-27)
src/test/kotlin/me/palazzomichi/brainfuckinterpreter/test/BrainfuckInterpreterTest.kt (2063, 2018-01-27)
src/test/kotlin/me/palazzomichi/brainfuckinterpreter/test/BrainfuckProgramTest.kt (5012, 2018-01-27)
src/test/kotlin/me/palazzomichi/brainfuckinterpreter/test/stream/ (0, 2018-01-27)
src/test/kotlin/me/palazzomichi/brainfuckinterpreter/test/stream/BrainfuckReaderTest.kt (1190, 2018-01-27)
src/test/kotlin/me/palazzomichi/brainfuckinterpreter/test/stream/BrainfuckWriterTest.kt (548, 2018-01-27)

# Brainfuck Interpreter kotlin interpreter for the brainfuck programing language. ## About Brainfuck Any character other than `><+-.,[]` is ignored. Brainfuck is characterized by an array of 30,000 cells initialized to zero and from a pointer pointing to the current cell. There are eight commands: - `+`: Increases the value of the current cell by one. - `-`: Decrements the value of the current cell by one. - `>`: Move the pointer to the next cell (on the right). - `<`: Move the pointer to the cell earlier (on the left). - `.`: Print the ASCII value of the current cell. (ex: 65 = 'A') - `,`: Read a single character as input and save it in the current cell. - `[`: If the cell value is zero, it continues up to the corresponding]. Otherwise, move on to the next instruction. - `]`: If the cell value is zero, move to the next instruction. If not, go back to the [correspondent. ## Use as a binary This runs a single Brainfuck file specified as a command-line parameter. Standard in and out are passed to the interpreter. ```text Usage: [-fsi] -f --file run brainfuck file -s --string run code directly -i --infinite run without cell limits ``` ## Use as a library ### Kotlin ```kotlin import me.palazzomichi.brainfuckinterpreter.BrainfuckInterpreter fun main(args: Array) { // [...] val brainfuck = BrainfuckInterpreter(inputStream, outputStream) // program can be either a BrainfuckProgram, a BrainfuckReader, a Reader or a String. brainfuck.execute(program) } ``` ### Java ```java import me.palazzomichi.brainfuckinterpreter.BrainfuckInterpreter; public class BrainfuckTest { public static void main(String... args) { // [...] BrainfuckInterpreter brainfuck = new BrainfuckInterpreter(inputStream, outputStream); // program can be either a BrainfuckProgram, a BrainfuckReader, a Reader or a String. brainfuck.execute(program); } } ```

近期下载者

相关文件


收藏者