getElementsByTagNameとtagsの違い

違いが全くわかりません。
例えばinputの数を求める場合

document.getElementsByTagName("input").length;
document.all.tags("input").length;

どちらも同じ結果が返ってくる。
下記の記述は、昨日たまたま見たサイトでたまたま見掛けて知った。
以前、UWSCのサンプルでも見掛けたような気もするが、まーそんなことはどーでもいい。
これは目に見えない所でびみょーに結果が違うのか
それとも好きな方を使えということなのだろうか?
結果が全く同じというのであれば、下記の短い方を使うけれど
その場合getElementsByTagNameの存在意義はどうなるのでしょう。