Matrix multiplication between A and B

    This function is equivalent to ``A @ B``, which is unfortunately
    not possible under python 2.x.

    Args:
        A (sequence):
        B (sequence):

    Returns:
        sequence:

def dot(A, B):
    """Matrix multiplication between A and B

    This function is equivalent to ``A @ B``, which is unfortunately
    not possible under python 2.x.

    Args:
        A (sequence):
        B (sequence):

    Returns:
        sequence:
    """
    try:
        result = A.__matmul__(B)
        if result is NotImplemented:
            result = B.__rmatmul__(A)
    except AttributeError:
        result = B.__rmatmul__(A)
    return result