Fungecraft - a Minecraft programming language

This is Fungecraft. A Minecraft programming language based on the esoteric programming language befunge. Instead of using different characters, as you do in befunge, you use Minecraft blocks.

92

Fungecraft - a Minecraft programming language

The most basic instruction is the beginning and end. To begin a program, place down a stone block. Then, whilst looking at that block, run the command `/trigger fungecraft.play`. This should start the program 1 block south of the stone. The execution will continue south until it hits a directional operator, or bedrock, which terminates the program.

The directional operators are magenta glazed terracotta, which looks like an arrow, and when the program pointer reaches one of them, it continues in the direction the arrow is pointing.

Then there are the mathematical operations. There is addition, which is represented by an oxidised cut copper block, Subtraction, which is a jukebox, Multiplication, which is a honeycomb block, Division, reperesnted by light blue glazed terracotta, And modulo, nether quartz ore. Each of these pops two values from the stack, a then b, and pushes back on the operation calculated with b and a (e.g. if the stack had a 2 then a 3, then you put a minus operation, it would pop 3 then 2 and push 2 - 3)

Chart for the different blocks in the MSBE (Minecraft standard block encoding (Really just the Fungecraft standard encoding)):

0: Black Wool 1: gray Wool 2: Brown Wool 3: Light gray Wool 4: White Wool 5: Red Wool 6: Orange Wool 7: Yellow Wool 8: Green Wool 9: Lime Wool 10: Cyan Wool 11: Light Blue Wool 12: Blue Wool 13: Purple Wool 14: Magenta Wool 15: Pink Wool 16: Black Concrete Powder 17: gray Concrete Powder 18: Brown Concrete Powder 19: Light gray Concrete Powder 20: White Concrete Powder 21: Red Concrete Powder 22: Orange Concrete Powder 23: Yellow Concrete Powder 24: green Concrete Powder 25: Lime Concrete Powder 26: Cyan Concrete Powder 27: Light Blue Concrete Powder 28: Blue Concrete Powder 29: Purple Concrete Powder 30: Magenta Concrete Powder 31: Pink Concrete Powder 32: Air 33: Bamboo 34: Black Concrete 35: gray Concrete 36: Lava Cauldron 37: Nether Quartz Ore 38: Observer 39: Brown Concrete 40: Light gray Concrete 41: White Concrete 42: Honeycomb Block 43: Oxidized Cut Copper 44: Oak Sign 45: Jukebox 46: Warped Sign 47: Light Blue glazed Terracotta 48: Chest 49: Red Concrete 50: Orange Concrete 51: Yellow Concrete 52: green Concrete 53: Lime Concrete 54: Cyan Concrete 55: Light Blue Concrete 56: Blue Concrete 57: Purple Concrete 58: Dispenser 59: Magenta Concrete 60: Magenta glazed Terracotta (facing north) 61: Pink Concrete 62: Magenta glazed Terracotta (facing south) 63: Dropper 64: Bedrock 65: Stone 66: Cobblestone 67: Deepslate 68: Cobbled Deepslate 69: Coal Ore 70: Deepslate Coal Ore 71: Coal Block 72: Copper Ore 73: Deepslate Copper Ore 74: Raw Copper Block 75: Copper Block 76: Iron Ore 77: Deepslate Iron Ore 78: Raw Iron Block 79: Iron Block 80: Lapis Ore 81: Deepslate Lapis Ore 82: Lapis Block 83: Redstone Ore 84: Deepslate Redstone Ore 85: Redstone Block 86: Emerald Ore 87: Deepslate Emerald Ore 88: Emerald Block 89: Diamond Ore 90: Deepslate Diamond Ore 91: Diamond Block 92: Piston 93: Ancient Debris 94: Magenta glazed Terracotta (facing east) 95: Repeater (facing south) 96: Comparator 97: Netherite Block 98: Black Terracotta 99: gray Terracotta 100: Brown Terracotta 101: Light gray Terracotta 102: White Terracotta 103: Note Block 104: Red Terracotta 105: Orange Terracotta 106: Yellow Terracotta 107: green Terracotta 108: Lime Terracotta 109: Cyan Terracotta 110: Light Blue Terracotta 111: Blue Terracotta 112: Sticky Piston 113: Purple Terracotta 114: Magenta Terracotta 115: Pink Terracotta 116: Black Carpet 117: gray Carpet 118: Magenta glazed Terracotta (facing west) 119: Brown Carpet 120: Light gray Carpet 121: White Carpet 122: Red Carpet 123: Orange Carpet 124: Yellow Carpet 125: Repeater (facing west) 126: Lectern

ADS