Re: Нужен ли bash
Aleksey Cheusov -> debian-russian@lists.debian.org @ Mon, 29 Sep 2008 14:32:28 +0300:
>>>> Нет, я не поддерживаю, но скорее да, склонен считать приемлемым.
>>>> Поддерживать совместимость с лузерами - не лучшая стратегия, мягко
>>>> говоря.
AC>>> Не понял. Переведи на русский. Кто здесь лузер? Тот, кто в
AC>>> программировании опирается на спецификацию? Или тот, кто
AC>>> предлагает расширения, совместимые со спецификацией?
>> Здесь лузер - это тот, кто прощелкал пользователей.
AC> Не надо сюда примешивать политику. У каждой системы есть свои
AC> пользователи, достоинства, недостатки и своя ниша. И свои
AC> маргиналы...
Нивапрос. Вот в нише и разумно требовать соблюдения стандарта.
>> getopt-то у юниксов(tm) стандартный. Но вот применяется он, вместе
>> с этими юниксами(tm), только по дальним пыльным углам.
AC> Он применяется абсолютно везде, а не только по пыльным углам.
Он не может применяться везде, поскольку наличествует только в юниксах,
применяемых по пыльным углам. Ну, может, фрюха еще под кроватью
попадается...
>> И то бинарники там гнутые через один...
AC> Лицензия позволяет, а в чем проблема то? Мы не на ЛОРе.
Ну, сиречь не соблюдающие этого стандарта.
>> И смысл с этим стандартом совмещаться? Чем плох гнутый getopt,
>> понятно - ssh, sudo, cdrecord... Твой пример с -eq мне
>> представляется искусственным, а эти три вполне понятны.
AC> Я уже говорил неоднократно, твой пример хорош, он более типичен
AC> и распространен.
AC> Но мой от этого не становится искуственным.
AC> Мы что, в детском саду?
Эээ... Покажи мне хотя бы одну программу с таким синтаксисом. test не
годится, у него нет [OPTIONS].
>> А вот совместимость со стандартом имеет ценность не как таковая, а как
>> средство интероперабельности/переносимости. Совмещаться с маргинальным
>> стандартом просто потому, что он есть - плохая идея.
AC> В данном конкретном месте он не маргинальный. Ты просто не видел
AC> по настоящему маргинальных случаев.
>> У данного конкретного есть другая ценность, но все же если выбирать
>> между гнутым решением с перестановкой и длинными опциями и стандартным
>> без перестановки и с короткими - я бы предпочел гнутый.
AC> А слабо предпочесть вариант, который предлагает _расширение_,
AC> которое не ломает стандарт, а?
Ключевое слово - "если".
AC> Неужели так дорога священная корова "_своё потому что GNU_", что
AC> напрочь отключает в голове здравый смысл? Скажем, добавляем
AC> getopt_long, но при этом не проявляем сверхествественного
AC> интеллекта по перестановке аргументов? Именно так и сделали _все_
AC> *BSD давным давно. В данном конкретном примере *BSD-ники (включая
AC> Mac OS-X) сделали совершенно логично и правильно. Точно так же как
AC> _все_ *BSD и GNU-шники/Linux-оиды переняли в свое время OpenBSD-ные
AC> find -print0 и xargs -0.
Видишь ли, в чем фигня... Оно к libc прибито гвоздями.
Кстати, интересно... А перловый Getopt::Long - он как устроен?..
Глянул. А там можно выбирать.
Посмотрел повнимательнее man 3 getopt. И там можно выбирать. Так что
соответствие *BSDшному стандарту в гнутом getopt, похоже, вполне
есть... Правда, способ выбора из программы кривоват, но работает...
>> Умный tab completion у меня уже есть
AC> Это совершенно левая боковая тема не имеет к текущей дискуссии ни
AC> малейшего отношения, и мне она не интересна.
AC> Используешь программируемый автокомплишн - используй на здоровье.
>>Тем более что в наше время частенько в мане описаны сильно не все
>>опции...
AC> В правильных местах описаны все до единой.
Покажи мне, пожалуйста, правильное место для openssl. Нет, не те его
маны, которые правились мной лично именно на этот предмет...
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
Современной называется технология, которую пытаются совать во все дырки
независимо от того, заточена она под них или нет.
Д. Белявский
Reply to: