Returns an effect that drops the current value and returns the parameter
    with the specified name instead, or the specified default value if the
    parameter is not specified.

def select_param(param_name, default=None):
    """
    Returns an effect that drops the current value and returns the parameter
    with the specified name instead, or the specified default value if the
    parameter is not specified.
    """

    def select_param(_value, _context, **params):
        return params.pop(param_name, default)

    return select_param