Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //BF interpreter
- /*function interpret(string)
- {
- console.log(string)
- var array = string.split("");
- var cells = new Uint8Array(300);
- var cellPointer = 0;
- result = "";
- for(var i = 0; i < array.length; i++) {
- switch(array[i]) {
- case '<':
- //console.log('<')
- cellPointer--;
- if(cellPointer < 0) { console.error("out of bounds"); }
- break;
- case '>':
- //console.log('.')
- cellPointer++;
- break;
- case '+':
- //console.log('+')
- cells[cellPointer]++;
- break;
- case '-':
- //console.log('-')
- cells[cellPointer]--;
- break;
- case '.':
- //console.log('.')
- //console.log(String.fromCharCode((cells[cellPointer]) + 1) % 255);
- var code = (cells[cellPointer] + 0) % 255;
- result += String.fromCharCode(code);
- break;
- case ',':
- //console.log(',')
- cells[cellPointer] = Number(prompt("Input a value:")) + 48;
- break;
- case '[':
- //console.log('[')
- if(cells[cellPointer] == 0) {
- while((array[i] != null) && (array[i] != undefined)) {
- i++;
- if(array[i] == ']') {
- break;
- }
- }
- }
- break;
- case ']':
- //console.log(']')
- if(cells[cellPointer] != 0) {
- while((array[i] != null) && (array[i] != undefined)) {
- i--;
- if(array[i] == '[') {
- break;
- }
- }
- }
- break;
- }
- }
- console.log(result)
- }
- //var test = ",[>+<-]>."
- //var test = ">++++++[<++++++++++>-]<++++++.";
- var test = "++++++++++>>+++[<++++++++++>-]<++>>+++[<++++++++++>-]<+++++>+++++[>+++++[<<.<.>>>-]<<<<.>>>-]";
- interpret(test)*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement