<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def list_datasets(name=None):
 """Get valid datasets and registered parameters. Parameters name : str or None, default None Return names and registered parameters of registered datasets. If name is specified, only registered parameters of the respective dataset are returned. Returns ------- dict: A dict of all the valid keyword parameters names for the specified dataset. If name is set to None, returns a dict mapping each valid name to its respective keyword parameter dict. The valid names can be plugged in `gluonnlp.model.word_evaluation_model.create(name)`. """

    reg = registry.get_registry(Dataset)

    if name is not None:
        class_ = reg[name.lower()]
        return _REGSITRY_NAME_KWARGS[class_]
    else:
        return {
            dataset_name: _REGSITRY_NAME_KWARGS[class_]
            for dataset_name, class_ in registry.get_registry(Dataset).items()
        }