Home Row

From Esolang
Jump to: navigation, search

Home Row is a language by User:PuzzleHunter84 that uses only the non-shifted symbols on the home row of a US PC keyboard: a,s,d,f,j,k,l, and ; to make programs incredibly quick and easy to type. The symbols perform functions similar but not identical to bf:

a "Add" 1 to the selected memory spot.
s "Subtract" 1 from the selected memory spot.
d move the memory pointer "Down" one memory spot.
f move the memory pointer "Forward" one memory spot.
j "Jump" over the next instruction if the current memory spot is zero.
k "Kill and print" the current memory spot reseting it to 0 and printing the value as an ASCII character.
l begin and end a "Loop" that runs if the current memory spot is nonzero and reruns after the second l each time if the current memory spot is nonzero.
; end the program.

The memory values are stored in a 5x5 grid of memory spots that all initialize at 0 and the current memory spot is designated by a memory pointer that initializes in the top-left spot. If the memory pointer moves off the end of a row it goes to the beginning off that row and the same with columns, so essentially the memory grid is a 5x5 torus where the memory counter can potentially initialize anywhere.

Hello World Program

could be optimized

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
aaaaaaaaaak;