def iscomponent(value, cls):
    """Check if *value* is a component for The Landlab. *value* is a component
    if it implements the *cls* or it is an instance of *cls*.

    Returns ``True`` if *value* is a component, otherwise ``False``.
    """
    try:
        return (
            cls in value.__implements__
            or cls.__name__ in value.__implements__
            or isinstance(value, cls)
        )
    except AttributeError:
        return False