User:Thematrixeatsyou/HighFive (programming)

From Wikipedia, the free encyclopedia
Jump to: navigation, search

HighFive is an esoteric programming language made by Ben Russell. It is inspired by BrainFuck and is also 100% Turing-complete.

HighFive only contains 5 instructions:

  • + - increment the value at the pointer
  • - - decrement the value at the pointer
  • * - jump if not zero
  • / - increment the pointer
  • . - put memory segment into output

Like BrainFuck, any other character is a comment, and is completely ignored.

The pointer can be one of eight possible 8-bit(1-byte) values, numbered from 0 to 7. They translate to:

These are the values that you manipulate. They are standard memory.
This sets the memory segment. When you do this, pointers 0-4 point to a different part of memory.
This sets the I/O port that you will use.
This is the input for the currently selected I/O port. It can be decremented for use in a loop using -. If you use + though, it will request a bit of input.

How does * work?[edit]

It is a relative conditional jump, which works like so:
If the last value modified equals zero, then jump backwards or forwards the number of steps as indicated by the pointer, which in this case is treated as a signed number.


Here is an example program, which should print "HELLO":