anchor.diff:  
   %% @doc Search the enemy chessman starting from the coordinates
   %% with the direction.
  --spec find_enemy(Board :: board(), Coord :: coord(), Step :: step(),
  +-spec find_enemy(Board :: board(), Coord :: coord(), Delta :: delta(),
                    EnemyColor :: echessd_game:color()) ->
                           {EnemyChessmanType :: echessd_game:chessman_type(),
                            Distance :: pos_integer()} |
                           undefined.
  -find_enemy(Board, Coord, Step, EnemyColor) ->
  -    find_enemy(Board, Coord, Step, EnemyColor, _Distance = 1).
  +find_enemy(Board, Coord, Delta, EnemyColor) ->
  +    find_enemy(Board, Coord, Delta, EnemyColor, _Distance = 1).
   
   %% @doc Helper for the find_enemy/4 fun.
  --spec find_enemy(Board :: board(), Coord :: coord(), Direction :: step(),
  +-spec find_enemy(Board :: board(), Coord :: coord(), Direction :: delta(),
                    EnemyColor :: echessd_game:color(),
                    Distance :: pos_integer()) ->
                           {EnemyChessmanType :: echessd_game:chessman_type(),
  
positive.code: ind_enc({C, R}) ->
      [$a + C - 1, $1 + R - 1].
  
  %% @doc Increment the cell coordinates with the step.
  %% The function return new coordinates or ?null if result
  %% is out of valid coordinates range (out of the chess board).
  -spec ind_inc(Coord :: coord(), Step :: step()) ->
                       (NewCoord :: coord()) | ?null.
  ind_inc({C, R}, {CS, RS}) ->
      Crd = {C + CS, R + RS},
  
negative.code:     [hint_for_chessman_type(Board, Coord, Color, ?bishop, History),
       hint_for_chessman_type(Board, Coord, Color, ?rook, History)];
  hint_for_chessman_type(Board, Coord, Color, ?knight, _History) ->
      [is_empty_or_enemy(Board, Color, ind_inc(Coord, Delta)) ||
          Delta <- knight_deltas()];
  hint_for_chessman_type(Board, Coord, Color, ?king, History) ->
      [is_empty_or_enemy(Board, Color, ind_inc(Coord, {-1, -1})),
       is_empty_or_enemy(Board, Color, ind_inc(Coord, {-1, 0})),
  