Re: [OT] Tcl

2015-01-29 Пенетрантность Anatoly Pugachev
2015-01-28 21:57 GMT+03:00 Ivan Shmakov i...@siamics.net:

Он еще где-то используется.  Например, в Solaris ;-)

 Я столь давно не слышал о Solaris (собственно, — где-то с
 момента закрытия OpenSolaris), что честно говоря уже
 «предположил худшее.»


на правах offtopic, уже вышла solaris 12 beta.
http://www.oracle.com/us/products/servers-storage/servers/sparc/oracle-sparc/sparc-roadmap-slide-2076743.pdf


Re: [OT] Tcl

2015-01-28 Пенетрантность Victor Wagner
On Tue, 27 Jan 2015 19:37:47 +
Ivan Shmakov i...@siamics.net wrote:


  AC А с учетом багов его реализации в Solaris?
 
   Разве Solaris sh все еще где-то изучается?  (В смысле, — кроме
   курса «компьютерной археологии» и ему подобных.)

Он еще где-то используется. Например, в Solaris ;-)
И когда пишешь портабельный скрипт приходится учитывать возможность
того, что этот скрипт кому-то потребуется запустить на Solaris.



--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/20150128110001.6a1ef1ee@fafnir



Re: [OT] Tcl

2015-01-28 Пенетрантность Ivan Shmakov
 Victor Wagner vi...@wagner.pp.ru writes:
 On Tue, 27 Jan 2015 19:37:47 +  Ivan Shmakov wrote:

  А с учетом багов его реализации в Solaris?

  Разве Solaris sh все еще где-то изучается?  (В смысле, — кроме курса
  «компьютерной археологии» и ему подобных.)

  Он еще где-то используется.  Например, в Solaris ;-)

Я столь давно не слышал о Solaris (собственно, — где-то с
момента закрытия OpenSolaris), что честно говоря уже
«предположил худшее.»

  И когда пишешь портабельный скрипт приходится учитывать возможность
  того, что этот скрипт кому-то потребуется запустить на Solaris.

Зависит от «требований заказчика»; иногда — неявных.  Так, при
разработке shell-кода для управления Iptables или Linux LVM,
едва ли имеет смысл обеспечивать совместимость с Solaris sh.

Впрочем, признаюсь, я и вовсе не склонен разделять энтузиазм
отдельных разработчиков относительно «полной» переносимости.

Так, известны случаи, когда система сборки проекта (если и не
безоговорочно «успешного», то по меньшей мере — полезного лично
мне) полагается на GNU Make (или, напротив, — NetBSD Make.)
Не думаю, что такими программами следует пренебрегать только
лишь на основании «непереносимости» отдельных их компонент.

Ситуация с требованием POSIX Shell (коим Solaris sh, AIUI,
/по факту/ не является?), Bash, или GCC (GNU Libc) — совершенно
аналогична.

Разумеется, это тем более верно, когда речь идет о свободном ПО,
разрабатываемом добровольцами; как правило, вопросы «случайного»
использования нестандартных расширений решаются быстро, в
особенности — при наличии у заявителя конкретного diff.

PS.  Прошу прощения за потерю References: в исходном сообщении.

-- 
FSF associate member #7257  np. Nokta elegio — Sepa kaj Asorti B6A0 230E 334A


[OT] Tcl

2015-01-27 Пенетрантность Ivan Shmakov
 AC == Artem Chuprina r...@ran.pp.ru writes:
 Fedor Zuev - debian-russian@lists.debian.org:

[…]

 FZ Видел я этот ваш tcl.  Не впечатлился честно говоря.  Заумь
 FZ какая-то.  Возможно, под какой-то специфический стиль мышления он
 FZ заточен идеально.  Но точно не под мой.  Все-таки простые вещи
 FZ должны делаться просто.

 AC Там как раз простые вещи делаются просто.  На порядок примерно
 AC проще, чем в sh.  Чем он, в частности, и прекрасен - порог
 AC вхождения практически отсутствует.

 AC И все описание синтаксиса вместе с семантикой на две страницы.  Без
 AC никаких странных исключений.

Описание грамматики такого /человекочитаемого/ языка, как
эсперанто, имеет сопоставимый объем, — bonvolu paroli la lingvo
internacia.

 AC Ну да, чтобы вывести его из трех примеров скриптов, нужно быть
 AC математиком.  Но выводить не обязательно, достаточно прочесть man
 AC tcl.

Нельзя ли привести примеры программ на Tcl, для написания
которых достаточно знания языка на уровне man tcl?

 AC Но на любителей sh tcl, действительно, впечатления не производит.
 AC Не доставляет незабываемых ощущений при попытках выяснить, почему
 AC переменная внутри while после пайпа как бы не работает, и как
 AC сделать, чтобы все-таки работала.

В случае с конвейером необходимо четко усвоить ровно один
принцип: как только мы задействуем |, — у нас уже не одна
программа, но две.  Даже если обе зовутся example.sh.  Все
прочее — тривиальные следствия.  Включая и возникновения вопроса
о том, которая из программ («слева или справа от |») являет
собой дочерний процесс, а которая — основной.

Bash, к слову, допускает оба варианта; подобно:

parent | while IFS= read -r -- line ; do : child ; done
while IFS= read -r -- line ; do : parent ; done  (child)

 AC А с учетом багов его реализации в Solaris?

Разве Solaris sh все еще где-то изучается?  (В смысле, — кроме
курса «компьютерной археологии» и ему подобных.)

[…]

-- 
FSF associate member #7257  http://boycottsystemd.org/  … 3013 B6A0 230E 334A