It was introduced because Optional and Required are two constraints of a kind that will probably always have identical functionality (I discovered that when trying to fix #4453 but didn't have time to complete this fix).