Documentation of workspace RUBIK

Defined Functions

Function L SI Lines Header Doxy Comments
FILE_IO (native) 0 G 0 /usr/local/lib/apl/ -
Xterm_Color 0 G 14 Z←Xterm_Color B B is an internal color name like 'W', 'Y', 'O', 'R', 'B', 'G', 'b', or 'w'. return the XTerm ESC sequence for it.
do_moves 0 G 2 State←State do_moves M
edge_parity 0 G 15 Z←edge_parity State compute edge parity (to detect illegal cube states)
face 0 G 7 Z←face N return the 3D cube numbers and the 3D axis for 2D face N
face_text 0 G 8 Z←State face_text B Z is the 2D text (= the facet number) given the 3D position and view axis
find_initial_pos 0 G 9 Z←find_initial_pos Color_XYZ find the initial position of the cube with colors Color_XYZ
get_level 0 G 9 Z←get_level State
get_moves 0 G 59 Z←State get_moves B
go 0 G 29 go the main program
interpret_all 0 G 5 Z←State interpret_all View
interpret_char 0 G 11 Z←State interpret_char B
mirror 0 G 6 Z←Face mirror Z mirror Z horizontally (Face=2 or 5), vertically (Face=1) or not at all.
parity3 0 G 32 Z←parity3 State compute cube parity (to detect illegal cube states)
pattern 0 G 47 Z←pattern B Z is a 3D layout (a View) that can be combind with a State (in function 'interpret_all' in order to display the State in a colored 3D fashion in an Xterm. The argument B specifies the lengths (in characters) of the sub-cubes in the X, Y, and Z dimensions
print_field 0 G 10 Z←A print_field Bg_Fg string A with given background/foreground colors Bg_Fg. If no foreground color is given then compute it from the background color.
print_level 0 G 5 Z←print_level State
propose_len_moves 0 G 11 Z←State propose_len_moves A perform all combinations of Len moves from repertoire A. Return the first combination (if any) that makes progress
propose_moves 0 G 10 Z←propose_moves State propose a move that makes progress (= placse more sub-cubes)
row_2D 0 G 11 Z←State row_2D B Z is one row (3 cubes) of a 2D face
setup_cube 0 G 27 State←State setup_cube Clear set up a cube by entering the colors of its facets (in 2D view)
show_cube 0 G 33 A show_cube State display the entire view, either in 2D or in 3D
try_moves 0 G 6 Progress←State try_moves Moves perform Moves and see if they place more sub-cubes
turn 0 G 9 State←State turn M


Variable L SI ⍴⍴ Type ↑∈
∆3D 0 G 0 0 Numeric 1
∆HELP 0 G 1 25 2 Character V
∆Initial_State 0 G 2 27 3 1 Character O
∆TCNT 0 G 0 0 Numeric 0

Global Function Call Graph