human
I wrote the below code

    if use_cpickle:
        pickler = cPickle.Pickler
    else:
        pickler = _PicklerWithWarning
    with closing(tarfile.TarFile(fileobj=file_, mode='w')) as tar_file:
        external_objects = {}
        def _save_parameters(f):
            renamer = _Renamer()
            named_parameters = {renamer(p): p for p in parameters}
            numpy.savez(f, **{n: p.get_value() for (n, p) in named_parameters.items()})
            for (name, p) in named_parameters.items():
                array_ = p.container.storage[0]
                external_objects[id(array_)] = _mangle_parameter_name(p, name)
        if parameters:
            _taradd(_save_parameters, tar_file, '_parameters')
        if (object_ is not None):
            save_object = _SaveObject(pickler, object_, external_objects, protocol, **kwargs)
            _taradd(save_object, tar_file, '_pkl')

What's a good function header?

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

def dump(object_, file_, parameters=None, use_cpickle=False, protocol=DEFAULT_PROTOCOL, **kwargs):