Por que um único caractere de sublinhado é um nome inválido para um parâmetro lambda?

Eu tentei nomear um parâmetro lambda _ , por exemplo (uma versão reduzida):

 Consumer c = _ -> {}; 

como eu queria significar que um parâmetro estava sendo ignorado, mas recebi o seguinte erro do compilador:

o uso de ‘_’ como um identificador é proibido para parâmetros lambda

Isso foi uma surpresa para mim. Curiosamente, dois sublinhados são OK:

 Consumer c = __ -> {}; // no compile error 

Portanto, não é o caractere de sublinhado em geral, mas um único.

Por que o nome do sublinhado único é especificamente proibido?

A razão é expressa neste post do próprio Brian Goetz :

Estamos “recuperando” o espaço sintático de “_” do espaço de identificadores para uso em futuros resources de linguagem. No entanto, como existem programas que podem usá-lo, é um aviso para identificadores que ocorrem em posições sintáticas existentes para 8 e um erro para formals lambda (já que não há código existente com lambdas).