Я использую много команд, предоставляющих своего рода API через подкоманды.Например,
git push
bzr push
apt-get install
Через некоторое время я устаю писать git push, git commit, git что-то ...потому что я знаю, что единственное, что я использую для 'commit', 'push' и т. д., это git на данный момент.
Играя с языками, обеспечивающими REPL (Ruby, Python и т. д.), я былупуская удобство ввода.
$ git pus... ## arrgh!
$ from git import *
$ push ## yes!
Я вижу четкую симметрию между командами, такими как git и пространства имен или модули в вышеупомянутых языках программирования.
Итак, вопрос: что для этого нужноиметь поддержку пространств имен в SHELL?или наоборот, что нужно для того, чтобы эти языки заменили ОБОЛОЧКУ?