def str_tspec(tspec, arg_names):
    """ Turn a single tspec into human readable form"""
    # an all "False" will convert to an empty string unless we do the following
    # where we create an all False tuple of the appropriate length
    if tspec == tuple([False] * len(arg_names)):
        return "(nothing)"
    return ", ".join([arg for t, arg in zip(tspec, arg_names) if t])