なんか予想通りの平凡な答えしか返って来ないなぁ。
gethostbynameで書けることをinet_atonのためにuse Socketする奴はいない。

またライブラリを使う場合、書き手によって何を使うかわからない。
Encodeかもしれないし、Jcodeかもしれないし、jcode.plかもしれない。
Socketかもしれないし、IO::Socketかもしれない。
自分があまり使わない物に出くわすたびに、その使い方を調べなくてはいけない。

関数に加えてライブラリ名や使い方や規模も覚えなくてはいけないし、
ライブラリを書く場合、「別途○○ライブラリが必要です」と言わなくてはいけない。

まだまだあるけど、とりあえずこのぐらいの違いかな。