needs array'

create tapCodes
  'a , 'b , 'c , 'd , 'e ,
  'f , 'g , 'h , 'i , 'j ,
  'l , 'm , 'n , 'o , 'p ,
  'q , 'r , 's , 't , 'u ,

: tapToChar ( rc-c )
  [ 1- ] bi@ swap 5 * tapCodes + + @ ;

: decode ( a- )
  @+ 2 / [ @+ swap @+ swap [ tapToChar putc ] dip ] times drop ;

^array'new{ 4 4   2 3   1 5
            1 2   2 4   4 2   1 4
            3 2   1 1   3 3 } decode

