We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.
HighFive
HighFive is an esoteric programming language by Ben Russell, which is loosely inspired by brainfuck.
Specification
The HighFive command set goes as such:
- +: increase what's at the pointer, or if pointer = 7, get input.
- -: decrease what's at the pointer, including if pointer = 7.
- /: increase the pointer. If pointer goes past 7, reset it to 0.
- *: if the last value modified is not 0, relative jump:
- Whatever's at the pointer, move Program Counter (PC) forward or backward that number of steps.
- .: output whatever's at the pointer.
- (That's a full stop. It doesn't show up well.)
Anything else is a comment.
What's at each pointer
- 0: memory slot #0
- 1: memory slot #1
- 2: memory slot #2
- 3: memory slot #3
- 4: memory slot #4
- 5: segment
- 6: I/O address
- 7: input
It's not too dissimilar to a CPU architecture.
I/O address list
- 0: CON (keyboard / screen)
Proposed I/O
- Extra segment ('cos the memory's too low)
(Any more, just drop it in here.)
How the segments work
Just change slot #5. Values are shown in hex.
00: 000 001 002 003 004 01: 005 006 007 008 009 02: 00A 00B 00C 00D 00E 03: 00F 010 011 012 013 ... ... ... ... ... ... FE: 4F6 4F7 4F8 4F9 4FA FF: 4FB 4FC 4FD 4FE 4FF
So you have 1280 bytes of RAM. If someone needs more then I'll rig up a mapper over one of the I/O ports, else it'll stay as-is. Just one 8-bit value can boost it up to 327680 bytes (320KB), which is more than Brainf*ck's 44000B (just under 43KB).
Examples
HELLO:
-----------------------------------////++++++++//// /+++++++++/+++++++++++++/++++/-////*/ ./---.+++++++..+++././/////+++++++++++++++./.+++.------.--------./+.
External resources
- HighFive Interpreter, with mirror in the Esoteric File Archive (original file lost for some weird reason.)
- This has been PD'd. Disregard the license, and do whatever you want with it. --Ben Russell 05:37, 12 August 2008 (UTC)