RFC 1459 に u_n_d_e_r_s_c_o_r_e は使えるのか
RFC 1459 によるとニックネームにアンダースコアは使えないことになっていますが、実際には rejoin した際にニックネームにアンダースコアをアペンドしたりと使ってる実装が多いです。また、ニックネームの先頭にアルファベット以外を使える実装も多いです。
::= { | | }
...
::= 'a' ... 'z' | 'A' ... 'Z'
::= '0' ... '9'
::= '-' | '[' | ']' | '\' | '`' | '^' | '{' | '}'
というわけで、下記のような BNF が現実に即しているのかな。
::= | { | | } ... ::= 'a' ... 'z' | 'A' ... 'Z' ::= '0' ... '9' ::= '-' | '[' | ']' | '\' | '`' | '^' | '{' | '}' | '_'