human
I wrote the below code

    DOWNLOAD_URL = 'http://archive.ics.uci.edu/ml/machine-learning-databases/reuters21578-mld/reuters21578.tar.gz'
    ARCHIVE_FILENAME = 'reuters21578.tar.gz'
    if (data_path is None):
        data_path = os.path.join(get_data_home(), 'reuters')
    if (not os.path.exists(data_path)):
        'Download    the    dataset.'
        print(('downloading    dataset    (once    and    for    all)    into    %s' % data_path))
        os.mkdir(data_path)
        def progress(blocknum, bs, size):
            total_sz_mb = ('%.2f    MB' % (size / 1000000.0))
            current_sz_mb = ('%.2f    MB' % ((blocknum * bs) / 1000000.0))
            if _not_in_sphinx():
                print(('\rdownloaded    %s    /    %s' % (current_sz_mb, total_sz_mb)), end='')
        archive_path = os.path.join(data_path, ARCHIVE_FILENAME)
        urllib.request.urlretrieve(DOWNLOAD_URL, filename=archive_path, reporthook=progress)
        if _not_in_sphinx():
            print('\r', end='')
        print('untarring    Reuters    dataset...')
        tarfile.open(archive_path, 'r:gz').extractall(data_path)
        print('done.')
    parser = ReutersParser()
    for filename in glob(os.path.join(data_path, '*.sgm')):
        for doc in parser.parse(open(filename, 'rb')):
            (yield doc)

What's a good function header?

=====
Here's a good function header?
assistant
#Here's a good function header.

def stream_reuters_documents(data_path=None):