mirror of https://github.com/embarklabs/sggc.git
30 lines
1.1 KiB
Solidity
30 lines
1.1 KiB
Solidity
/**
|
|
* This file is part of the 1st Solidity Gas Golfing Contest.
|
|
*
|
|
* This work is licensed under Creative Commons Attribution ShareAlike 3.0.
|
|
* https://creativecommons.org/licenses/by-sa/3.0/
|
|
*/
|
|
|
|
pragma solidity 0.4.24;
|
|
|
|
contract BrainFuck {
|
|
/**
|
|
* @dev Executes a BrainFuck program, as described at https://en.wikipedia.org/wiki/Brainfuck.
|
|
*
|
|
* Memory cells, input, and output values are all expected to be 8 bit
|
|
* integers. Incrementing past 255 should overflow to 0, and decrementing
|
|
* below 0 should overflow to 255.
|
|
*
|
|
* Programs and input streams may be of any length. The memory tape starts
|
|
* at cell 0, and will never be moved below 0 or above 1023. No program will
|
|
* output more than 1024 values.
|
|
*
|
|
* @param program The BrainFuck program.
|
|
* @param input The program's input stream.
|
|
* @return The program's output stream. Should be exactly the length of the
|
|
* number of outputs produced by the program.
|
|
*/
|
|
function execute(bytes program, bytes input) public pure returns(bytes) {
|
|
}
|
|
}
|