Named parameters came from Smalltalk, and no explanation I give can equal the sheet beauty of reading smalltalk code.
I'm not sure I could devise a full explanation, but a concise example is in scientific libraries for functions like, `run_simulation(data, optimizer = "Lebesque", shearing_algorithm = "Neue", spline_intensity = "Forrester")`. The number of options can be very large.