「は」の奈良時代以前の発音は pa でした。従って「はは」は papa でした。
「さ」の古い発音は tsa でした。「ささ」は tsatsa でした
「かき」は kaki でした。
平安時代になると語頭の「は」「さ」等はそのままでしたが、語中語尾では母音に挟まれているので発音しやすいように有声音に
なり、pava tsaza kaghi となりました。pava は平安時代のうちに pawa になったようてす。
当時はまだ濁点が発達していなかったので、「はば」「かぎ」も「はは」「かき」と書いて pamba kangi と発音し分けていました。(東北方言の松mazu と 先ず mandzu の関係に似ています。)
鎌倉時代になると音節の長さを同じにして発音するようになったため、清濁の区別がわかりやすいように
ささ tsasa さざ tsaza
かき kaki かぎ kaghi
となりましたが、「はは」は papa にもどさなくても
はは pawa はば paba
と区別できるのでそのままになりました。
こうして600年以上にわたって、語中語尾の「は」は wa と発音されてきました。特に助詞の wa は、必ず言葉の後ろについて弁別がたやすいので、だれでも「は」と書くのに慣れきってしまいました。
現代の仮名遣いを制定するとき、助詞の wa e o を「わ」「え」「お」とすることには強い抵抗がありましたので、旧仮名遣いに代えて現代仮名遣いが普及しやすいように、助詞の wa e o は「は」「へ」「を」と書くことを本則としました。