Unary minus and fat comma

We often see

foo ( -bar => 1 );

We (hopefully) know this is the same as

foo ( '-bar', 1 );

But what's really going on?

Next