Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Victor Wagner
On 2012.07.02 at 19:01:43 +0400, Артём Н. wrote:

 
  А если ты хочешь действительно прекрасного синтаксиса, возьми tcl.  У
  него _полное_ описание синтаксиса и семантики укладывается, если я
  правильно помню, в одну страницу A4, а if - всего лишь процедура из
  стандартной библиотеки.  И все необходимое из того, что я описывал, есть.
  Все-таки man-страница Tcl(3Tcl) содерщащая указанное полное описание,
  при печати занимает несколько больше, чем одна страница А4. То-ли три,
  то-ли десять, не помню уже. 
 С Tcl разбирался. Согласен, язык неплохой. Но простой. В данном случае, 
 слишком:
 ни обработки исключений, ни объектов, ни работы с файлами... Хотя, кажется, 
 там
 
Не разобрался значит.

Потому что в этом языкие все управляющие конструкции реализвованы как
библиотечные процедуры. И catch - тоже. 

Поэтому объектную систему каждый может написать для себя сам. И их
десяток уже написано. И стоит 3-4 изучить чтобы понять что объекты- это
лишнее.

 есть какие-то библиотеки, которые всё это реализуют?

Есть базовый набор команд, входящий в состав интерпретатора.

 Плюс, он, в принципе, интерпретируемый. Но я не уверен, что нет компилятора. 
 o.O

В Tcl слишком много завязано на eval.  

  Но практика последующего  развития языка показала, что попытка Остерхута
  создать Lisp для нематематиков скорее оказалась неудачной. Вот попытка
  Ларри Уолла создать естественный компьютерный язык вышла несколько
  лучше.
 Почему неудачной? Он нашёл свою целевую аудиторию, кажется?

Потому что  GUI-шные программы до сих пор пишут на Gtk и Qt, а не на
Tk.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20120703065954.ga26...@wagner.pp.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Andrey Rahmatullin
On Tue, Jul 03, 2012 at 10:59:54AM +0400, Victor Wagner wrote:
 Потому что  GUI-шные программы до сих пор пишут на Gtk и Qt, а не на
 Tk.
В этом вина не только (и не столько?) Tcl, но и Tk.

-- 
WBR, wRAR


signature.asc
Description: Digital signature


Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Andrey Rahmatullin
On Tue, Jul 03, 2012 at 07:33:41AM +0400, Artem Chuprina wrote:
 Нет, у тех, кто делает такие системы конфигурации.  Начиная с виндового
 реестра, и заканчивая гномовским, и еще кем-то у нас в дистрибутиве же,
 кто ради не помню чего, чуть ли не тоже конфигурации, тянет за собой
 персональный экземпляр mysqld для каждого юзера.  Узнать о существовании
 sqlite он, видимо, ниасилил...
Если вы про akonadi, то это FUD.

-- 
WBR, wRAR


signature.asc
Description: Digital signature


про ifconfig и ax.25

2012-07-03 Пенетрантность sergio

Привет.

Почему-то после того как я говорю ifconfig без параметров, от 
пользователя (ну или с -a) то кто-то подтыкает netrom, rose и в системе 
появляется куча ненужных интерфейсов. ip link и ip addr таким эффектом 
не обладают. Можно ли это исправить? Это сид.


--
sergio.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff2cb86.3030...@sergio.spb.ru



Re: про ifconfig и ax.25

2012-07-03 Пенетрантность Kirill Shilov
хм. у меня всё нормально. а ifconfig точно не алиас? или скрипт?

3 июля 2012 г., 16:37 пользователь sergio mail...@sergio.spb.ru написал:
 Привет.

 Почему-то после того как я говорю ifconfig без параметров, от пользователя
 (ну или с -a) то кто-то подтыкает netrom, rose и в системе появляется куча
 ненужных интерфейсов. ip link и ip addr таким эффектом не обладают. Можно ли
 это исправить? Это сид.

 --
 sergio.


 --
 To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
 with a subject of unsubscribe. Trouble? Contact
 listmas...@lists.debian.org
 Archive: http://lists.debian.org/4ff2cb86.3030...@sergio.spb.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Victor Wagner
On 2012.07.03 at 14:12:47 +0600, Andrey Rahmatullin wrote:

 On Tue, Jul 03, 2012 at 10:59:54AM +0400, Victor Wagner wrote:
  Потому что  GUI-шные программы до сих пор пишут на Gtk и Qt, а не на
  Tk.
 В этом вина не только (и не столько?) Tcl, но и Tk.

Так логика-то она у них общая. Они, конечно не близнецы, но братья, и
Остерхут - отец обоим.



-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20120703111949.ga2...@wagner.pp.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Andrey Rahmatullin
On Tue, Jul 03, 2012 at 03:19:50PM +0400, Victor Wagner wrote:
   Потому что  GUI-шные программы до сих пор пишут на Gtk и Qt, а не на
   Tk.
  В этом вина не только (и не столько?) Tcl, но и Tk.
 Так логика-то она у них общая. Они, конечно не близнецы, но братья, и
 Остерхут - отец обоим.
Да кого волнует логика в случае Tk.

-- 
WBR, wRAR


signature.asc
Description: Digital signature


Re: про ifconfig и ax.25

2012-07-03 Пенетрантность sergio

On 07/03/2012 02:41 PM, Kirill Shilov wrote:

хм. у меня всё нормально. а ifconfig точно не алиас? или скрипт?

В сиде?
Да ifconfig точно не алиас и не скрипт.


--
sergio.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff2d778.3010...@sergio.spb.ru



Re: про ifconfig и ax.25

2012-07-03 Пенетрантность Kirill Shilov
да, у меня на домашней тестовой машинке стоит сид.

я где-то подобный баг видел, в рассылке RH. но там это было после спячки.

2012/7/3 sergio mail...@sergio.spb.ru:
 On 07/03/2012 02:41 PM, Kirill Shilov wrote:

 хм. у меня всё нормально. а ifconfig точно не алиас? или скрипт?

 В сиде?
 Да ifconfig точно не алиас и не скрипт.



 --
 sergio.


 --
 To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
 with a subject of unsubscribe. Trouble? Contact
 listmas...@lists.debian.org
 Archive: http://lists.debian.org/4ff2d778.3010...@sergio.spb.ru



mplayer и XF86Audio* buttons

2012-07-03 Пенетрантность sergio

Привет.

Скажите, а mplayer'ы 1 и 2 только у меня на XF86Audio* не реугируют, или 
я что-то не так делаю? xev всё правильно говорит и e16 на них реагирует.


--
sergio.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff2e541.5070...@sergio.spb.ru



Re: mplayer и XF86Audio* buttons

2012-07-03 Пенетрантность Stanislav Maslovski
On Втр, 2012-07-03 at 16:27 +0400, sergio wrote:
 Привет.
 
 Скажите, а mplayer'ы 1 и 2 только у меня на XF86Audio* не реугируют, или 
 я что-то не так делаю? xev всё правильно говорит и e16 на них реагирует.

На Play/Pause вроде реагирует, но у меня самосборный. А вообще, у
mplayer есть конфиг для шорткатов.

-- 
Stas


Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Артём Н.
03.07.2012 01:14, Stanislav Maslovski пишет:
 On Mon, Jul 02, 2012 at 08:36:58PM +0400, Артём Н. wrote:
 02.07.2012 19:42, Artem Chuprina пишет:
 Артём Н. - debian-russian@lists.debian.org  @ Mon, 02 Jul 2012 19:13:04 
 +0400:

  АН Хм... Да, пожалуй, это верно.
  АН Но, если система выполняет ответственные действия..?
  АН Вопрос в том совместить требования надёжности и корректности с
  АН отказоустойчивостью и возможностью восстановления после сбоя?
 Кодогенерация сишного или даже ассемблерного кода на какой-нибудь 
 agda.
 Которая из тебя душу вынет, пока ты ей корректность не докажешь.
 Правда, порог вхождения весьма высокий.
АН Про Agda не слышал. Что-то небогато по ней документации, но,
АН насколько я понял, это система автоматического доказательства
АН теорем. Не очень понимаю, как она может быть использована, в данном
АН контексте: тесты же должны выполняться после компиляции..?
   В данном случае компиляция выполняется вместо тестов.  Тесты, в отличие
   от доказательства корректности, не являются гарантией надежности.
  АН Но ведь полное доказательство корректности провести невозможно..?
 Кто сказал?
 Ну это самоочевидно. В крайнем случае, возможно провести доказательство
 корректности отдельно взятой функции, если она минимальна (имеет строго
 определённые области значения и области определения, причём количество таких
 областей ограничено и известный тип зависимостей для этих областей), что
 позволяет доказать корректность, используя определённый набор правил...
 Вообще, есть такая теорема Гёделя о неполноте, согласно которой в любой
 формальной системе, сводимой в определённом смысле к арифметике,
 существуют недоказуемые утверждения.
Которая, думаю, сюда не очень подходит: есть набор правил, которые должны
выполняться для доказательства непротиворечивости.
Т.е., имеются некоторые утверждения от которых возможно отталкиваться.
К Гёделю и проблемам Гильберта это отношения не имеет. К счастью. :-D
К тому же, в данном частном случае, система, как правило, дискретна.
И, в теории, возможно перечислить все её состояния, подав на вход все комбинации
нулей и единиц (даже, если система с памятью).

На практике - невозможно для сложных систем.

 В теории алгоритмов аналог этой теоремы формулируется примерно так:
 Не существует алгоритма, позволяющего по описанию произвольного
 алгоритма и его исходных данных определить, останавливается ли
 этот алгоритм на этих данных (т.е., выдаёт результат) или работает
 бесконечно.
Ну да, невозможность вывода универсального алгоритма. Там же немного другая 
задача.

 Т.е., общей процедуры доказательства правильности программ в принципе не
 существует. Однако, это не означает, что в частных случаях такое
 доказательство провести нельзя.
Вопрос -то там был изначально в другом.
А. Чуприна написал, что:
В данном случае компиляция выполняется вместо тестов.  Тесты, в отличие от
доказательства корректности, не являются гарантией надежности.

Т.е., подразумевал, что в этом случае возможен отказ от тестов.
Мне кажется это сомнительным.
По причине того, что полное доказательство, в принципе, провести невозможно (в
зависимости от уровня сложности, конечно).

 Например, существуют языки программирования, которые вычисляют через
 доказательство (через формальную процедуру вывода). PROLOG, например.
 На таких языках можно писать программы, которые сами же являются
 доказательствами своей правильности.
Да, кстати, Пролог я не понимаю. :-(
Изначально - всё просто. Затем, правила становятся какие-то дикие (к тому месту,
где начинается рекурсия и прочее). Хотя, может, в книжке было плохо описано.
Но почему программа является априори правильной?
Ведь она там - просто набор отношений, а Пролог - система вывода.
Кто сказал, что данный набор отношений будет давать верный с точки зрения
условий задачи результат на любом подмножестве входных данных?
И на практике: будь всё так хорошо, как вы пишите, все бы уже давно писали на
Прологе (по крайней мере, знали бы что это такое). :-)


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff304ad.6010...@yandex.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Артём Н.
02.07.2012 23:54, Stanislav Maslovski пишет:
 On Mon, Jul 02, 2012 at 02:23:53PM +0600, Andrey Rahmatullin wrote:
 On Mon, Jul 02, 2012 at 09:35:58AM +0400, Artem Chuprina wrote:
 А если ты хочешь действительно прекрасного синтаксиса, возьми tcl.  У
 него _полное_ описание синтаксиса и семантики укладывается, если я
 правильно помню, в одну страницу A4
 Это у lua.
 
 И всё равно, кривой язык (имхо). Производит стойкое впечатление лишней
 сущности, которую пихают куда надо и куда не надо все, кому не лень.
Кстати, у меня тоже до сих пор не угасло желание его запихнуть куда не надо.
Библиотечкой... Пусть будет нормальная поддержка скриптов, плохо что-ли? :-)


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff3071a.10...@yandex.ru



Re: mplayer и XF86Audio* buttons

2012-07-03 Пенетрантность sergio

On 07/03/2012 06:10 PM, Stanislav Maslovski wrote:


На Play/Pause вроде реагирует, но у меня самосборный.

А у меня Мариллатовский, возможно проблема в этом.


А вообще, у mplayer есть конфиг для шорткатов.

Есть да, у меня свой используется, причём достаточно люто с
input = nodefault-bindings=true
в конфиге,
так что на на все незнакомые кнопки на консоль идёт ругань. А с этих
тишина.




--
sergio.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff30a6c.9050...@sergio.spb.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Артём Н.
03.07.2012 07:33, Artem Chuprina пишет:
  АН А как доказать корректность сложной функции, которая образует систему 
 простых?
  АН Как проверить все связи?
  АН Как доказать корректность функции с побочными эффектами?
  АН И, например, крайний случай: возможно ли доказать корректность 
 поведения
  АН произвольной ИНС?
 С тех пор, надо сказать, наука шагнула довольно далеко вперед, и
 рутинные операции типа проверки _всех_ связей компьютер делать уже
 обучен.
...
 А теория нам говорит, что нельзя построить универсальный автоматический
 доказыватель программ.  А того, что нельзя доказать конкретную
 программу, даже довольно сложную - не говорит.
А на практике? Ведь программа взаимодействует с окружением. И окружение, и
программа могут иметь такую сложность, что проверить все пути не представится
возможным..?
Я не бросаю камень в сторону автоматической проверки корректности (о которой и
хочу узнать). Просто мне кажется, что отказ от тестов - не самая лучшая идея.

 Но я сам с агдой не работал, и не готов тебе сказать, что именно она
 позволит, а что нет.  Видел, что, скажем, она не позволяет
 скомпилировать функцию, определенную не на всем домене, в отличие от
 хаскеля.  Но по опыту работы на Хаскеле - уже даже его неполная проверка
 типов, если делать типы под задачу, ловит на этапе компиляции ОЧЕНЬ
 многое из того, что иначе пришлось бы ловить немеряным количеством
 тестов.  Да, остается возможность перепутать + с - и True с False, но за
 два года работы на нем я таких ошибок сделал не больше десятка.  И один
 раз налетел на оставленную неполной функцию.  А типичное правило с ним -
 если программа скомпилировалась, то почти наверняка она работает, и даже
 правильно.
В любом случае, штука полезная.

   Любой статически типизированный функциональный язык с нормальной
   системой типов, начиная с того же Haskell или Ocaml.
  АН Ocaml? Любопытно. Пожалуй, посмотрю подробнее.
  АН Для него есть какая-то IDE? И как с библиотеками?
 Я знаю одну IDE на все случаи жизни.  Emacs.
АН И для всяких там GUI? ;-) В общем, я им не пользуюсь.
   Ну да.  Поскольку мои дизайнерские способности ниже средних, в отличие
   от способностей в разработке поведения, я предпочитаю GUI, которые
   пишут, а не рисуют.  Внешний вид - дефолтный, а поведение описывается
   словами.
  АН Дык, внешний вид - это не картинка кнопки, а компоновка. Всё же
  АН словами не опишешь. Видеть надо.
 Компоновка как раз очень неплохо описывается словами.  Заодно потом не
 возникает типичных для мышконавозенного гуя ситуаций, когда при переводе
 на русский половина надписей получается обрезанной, и в лучшем случае -
 поперек, а то я у фотошопа видал, что видно нижнюю половину одной строки
 и верхнюю - другой...
Я понимаю, что практически любой интерфейс описывается словами. :-) Такой же
язык. Но создавать его, описывая словами, мне кажется не самой лучшей и
перспективной идеей.

   JAPH - это не для того, чтобы писать работающую программу :)
  АН Однако, они показывают вариации синтаксиса: такой разный стиль...
 Это не столько вариации синтаксиса, сколько вариации его художественного
 использования.  На C, кстати, я тоже такие примеры видел - скажем,
 круглую программу, вычисляющую пи.
На C всё достаточно жёстко, если не извращаться с макросами, ассемблерными
вставками (вдобавок блобами) и указателями на указатели на указатели.
Т.е., если делать так, как предполагает язык, там такого сделать нельзя.
Максимум - это малопонятный из-за названий переменных однострочник (да, или 
кружок).
Но это совершенно другое.
В C нет eval. :-)
Если подумать, конечно, есть сходства...
Но, что ещё важно: C, может, и не особенно хороший язык (в плане понятности,
читаемости и надёжности созданного ПО), но там нет столько всего лишнего. И
такой кучи синтаксического сахара (без расширений, там массивы - максимум :-D ),
как в Perl. Плюс, строгая модель: любой вызов - функция.
C прост и элегантен. :-)
А про Perl ходят шутки:
Любой набор символов в любой кодировке является синтаксически правильным Perl 6
кодом.
Всегда есть бесконечное количество различных способов сделать это.
Любой человек, писавший до этого на любом языке, может сразу писать на Perl 6.
Он может даже не догадываться, что пишет на Perl 6. Если, конечно, не будет
забывать ставить 1; в конце модулей.
Можно перегружать 1;. Можно перегружать пробелы. Можно перегружать сорц фильтры
с помощью регулярных выражений, которые тоже можно перегружать.
Perl 6 имеет эталонную реализацию, написанную на Perl 6 и не способную быть
выраженной ни на каком другом языке. На Perl 6 эталонная реализация может быть
выражена, но не за конечное время. Мы работаем над этим.
1;
...
Программы на Perl могут писаться на любых языках, например на латыни или языке
Древних. О написаніи программъ въ орѳографіи образца 1916-аго года покамѣстъ
свѣдѣній нѣтъ.
Perl — один из немногих языков c поддержкой квантового исчисления.

Про C - это бы звучало дико. :-)

Та часть, которая делает Perl языком Perl, умышленно построена на 

Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Артём Н.
03.07.2012 07:44, Artem Chuprina пишет:
 Артём Н. - debian-russian@lists.debian.org  @ Mon, 02 Jul 2012 20:25:53 
 +0400:
 
   То, что в нем объектов нет, это хорошо.
  АН Это вопрос для чего.
 Практически для всего.  Я тоже в свое время радостно ломанулся в
 ОО-программирование.  Потом поумнел.
Но это не значит, что ООП не имеет права на жизнь.
Идея была такой просто и хорошей... :-(

 Помнится, код, переписанный с C++ на C со старательным выкидыванием всей
 объектности, кроме нужной, стал на порядок компактнее, вдвое понятнее, и
 давал в разы меньший результат при компиляции.
 Tcl - он же функциональный по сути, зачем ему объекты?
Хм... Честно не знаю. Объекты, в принципе, не лишние. Но как совмещается
объектный и функциональный подход..? Хотя, библиотеки-то есть...

   А исключения и работа с файлами
   там есть.  Просто она не относится к синтаксису - это вам не PHP :-)
  АН Хм...
 Чего хм?  error/catch/return/bgerror и
 open/socket/close/read/puts/seek/fconfigure/fileevent.  На последнее
 особенно обрати внимание - я не знаю больше ни одного языка со столь
 удобным обращением с асинхронными IO-событиями.
Почему тогда на нём не пишут?
Исторические причины?


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff31168.8020...@yandex.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Артём Н.
03.07.2012 10:59, Victor Wagner пишет:
 On 2012.07.02 at 19:01:43 +0400, Артём Н. wrote:
 

 А если ты хочешь действительно прекрасного синтаксиса, возьми tcl.  У
 него _полное_ описание синтаксиса и семантики укладывается, если я
 правильно помню, в одну страницу A4, а if - всего лишь процедура из
 стандартной библиотеки.  И все необходимое из того, что я описывал, есть.
 Все-таки man-страница Tcl(3Tcl) содерщащая указанное полное описание,
 при печати занимает несколько больше, чем одна страница А4. То-ли три,
 то-ли десять, не помню уже. 
 С Tcl разбирался. Согласен, язык неплохой. Но простой. В данном случае, 
 слишком:
 ни обработки исключений, ни объектов, ни работы с файлами... Хотя, кажется, 
 там
  
 Не разобрался значит.
Ну да, я глубоко с ним не разбирался.

 Потому что в этом языкие все управляющие конструкции реализвованы как
 библиотечные процедуры. И catch - тоже. 
 
 Поэтому объектную систему каждый может написать для себя сам. И их
 десяток уже написано. И стоит 3-4 изучить чтобы понять что объекты- это
 лишнее.
Посмотрю. Но потом. Много всего.

 есть какие-то библиотеки, которые всё это реализуют?
 
 Есть базовый набор команд, входящий в состав интерпретатора.
 
 Плюс, он, в принципе, интерпретируемый. Но я не уверен, что нет компилятора. 
 o.O
 
 В Tcl слишком много завязано на eval.  
Это - плохо.

 Но практика последующего  развития языка показала, что попытка Остерхута
 создать Lisp для нематематиков скорее оказалась неудачной. Вот попытка
 Ларри Уолла создать естественный компьютерный язык вышла несколько
 лучше.
 Почему неудачной? Он нашёл свою целевую аудиторию, кажется?
 
 Потому что  GUI-шные программы до сих пор пишут на Gtk и Qt, а не на
 Tk.
Ага. Tk-интерфейс убог. Хотя, кажется, что-то там переделали в новых версиях.
Вот если бы Tk был прослойкой к функциям используемой библиотеки (и сам выбирал:
Qt, gtk или GDI)...


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff3205f.1070...@yandex.ru



Re: Ошибка при обновлении. Что за фигня?

2012-07-03 Пенетрантность Артём Н.
Возможно, баг.
Было нечто подобное:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/945722

Вылечилось так:
$ dpkg --force-depends -P gcc-4.7-base:i386
$ dpkg --force-depends -P gcc-4.7-base:amd64


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff336ca.6050...@yandex.ru



Re: Shell, Perl

2012-07-03 Пенетрантность Артём Н.
03.07.2012 08:23, Ivan Shmakov пишет:
   И да, как мне кажется, я все же научился писать читаемый код на
   Perl.  Изучив Scheme.
Перспективно... :-)

  АН Так причём тут проверка в конфиге?  Достаточно проверки в
  АН загрузчике конфига:
 
  AH config:
 
  АН OPT_PARAM1=123
 
  АН Скрипт:
 
  АН . config
  АН OPT_PARAM1=${ENV_USER_PARAM1-:OPT_PARAM1}
 
  AC Можно.  Но обычно удобнее в конфиге написать
 
  AC OPT_PARAM1=${OPT_PARAM1:-value1}
 
  AC и позволить пользователю переопределять именно OPT_PARAM_1,
  AC использование которой он потом увидит, а не неочевидно с нею связанную
  AC ENV_USER_PARAM1
 
   BTW, есть и более короткий вариант:
 
 : ${VARN:=VALUE}
Тоже вариант. Просто я все подстановки не помню.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4ff34032.3080...@yandex.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Alexander Galanin
On Tue, 03 Jul 2012 19:36:08 +0400
Артём Н. artio...@yandex.ru wrote:

  Чего хм?  error/catch/return/bgerror и
  open/socket/close/read/puts/seek/fconfigure/fileevent.  На последнее
  особенно обрати внимание - я не знаю больше ни одного языка со столь
  удобным обращением с асинхронными IO-событиями.
 Почему тогда на нём не пишут?

Пишут. Но не стоит связывать удобство программирования и популярность
языка. Можно заметить, что популярными становятся далеко не самые лучшие
инструменты.

 Исторические причины?

Tcl в своё время сильно раскритиковал один любитель текстовых редакторов
на лиспе: http://www.vanderburg.org/OldPages/Tcl/war/

-- 
Alexander Galanin


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/20120704001742.3730b43c8fba17972ed7d...@galanin.nnov.ru



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Sergey Korobitsin
Артём Н. ☫ → To debian-russian@lists.debian.org @ Tue, Jul 03, 2012 19:25 
+0400

 [ ... ]

 Если подумать, конечно, есть сходства...
 Но, что ещё важно: C, может, и не особенно хороший язык (в плане понятности,
 читаемости и надёжности созданного ПО), но там нет столько всего лишнего. И
 такой кучи синтаксического сахара (без расширений, там массивы - максимум :-D 
 ),
 как в Perl. Плюс, строгая модель: любой вызов - функция.
 C прост и элегантен. :-)
 А про Perl ходят шутки:
 Любой набор символов в любой кодировке является синтаксически правильным 
 Perl 6
 кодом.
 Всегда есть бесконечное количество различных способов сделать это.

 [ ... ]

 Perl — один из немногих языков c поддержкой квантового исчисления.
 
 Про C - это бы звучало дико. :-)

Вы бы лучше, вместо этого, почитали саму Camel Book. Она интересная,
стоит того, даже если на Perl-е вы программировать и не будете.

 Та часть, которая делает Perl языком Perl, умышленно построена на смеси 
 разных
 парадигм, учитывающей каждую из них. Можно сказать, что Perl не собирается
 навязывать вам никаких догм. 
 Лари Уолл.

Это и есть главная особенность Perl. Я могу писать, как мне
вздумается.

Впрочем,
как на шелл - это лучше на шелле же и писать.  Ну, с привлечением sed
и/или awk.  perl позволяет писать совершенно третьим способом, и вот
именно им и надо писать надежные программы на нем.
   АН Эээ Каким?
  use strict;
  eval {...}; (не путать с eval ...)
 Гы-гы... Это мне о многом говорит. :-D Нет, правда. :-D

Не вижу ничего смешного, даже краткого знакомства с Perl достаточно,
чтобы понять различие поведения для строки () и блока кода ({}).
Это исключения (Exceptions) так ложатся на Perl, если вы не в курсе. Да
- и для страждущих объектные исключения тоже есть.

  Для задач, которые можно решать на sh, этого достаточно.  Ну, может, еще
  IPC::Open2 и IPC::Open3, когда надо и на вход подавать поток, и на
  выходе его забирать, да еще (в случае Open3) stderr анализировать.
 Не знаю, может Perl и хорош. Но Camel Book, о котором тут писали на 1000 с
 копейками страниц? И тогда уж сравните с книгой KR...

Так с момента выхода содержание KR не особо менялось, а теперь сравните
годы выпуска Camel Book и KR и вспомните, сколько всяких разных
mainstream- и не очень технологий и концепций появилось. 

 [ ... ]

-- 
Bright regards, Sergey Korobitsin,
Chief Research Officer
Arta Software, http://arta.kz/
xmpp:underta...@jabber.arta.kz

--
Твой локалхост -- не мой локалхост! 
  -- индейцы племени Апачей


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/20120704033726.gm5...@undertaker.dev.lan.arta.kz



Re: Несколько вопросов вразброс

2012-07-03 Пенетрантность Stanislav Maslovski
On Tue, Jul 03, 2012 at 06:41:49PM +0400, Артём Н. wrote:
  Вообще, есть такая теорема Гёделя о неполноте, согласно которой в любой
  формальной системе, сводимой в определённом смысле к арифметике,
  существуют недоказуемые утверждения.
 Которая, думаю, сюда не очень подходит: есть набор правил, которые должны
 выполняться для доказательства непротиворечивости.
 Т.е., имеются некоторые утверждения от которых возможно отталкиваться.
 К Гёделю и проблемам Гильберта это отношения не имеет. К счастью. :-D

Связь между проблемой останова в теории алгоритмов (из которой
вытекает отсутствие общей процедуры доказательства правильности
программ) и теоремой Гёделя, тем не менее прямая. Обитающие здесь
математики могут подтвердить.

 К тому же, в данном частном случае, система, как правило, дискретна.
 И, в теории, возможно перечислить все её состояния, подав на вход все 
 комбинации
 нулей и единиц (даже, если система с памятью).

Если система обладает неограниченной памятью, как машина Тьюринга с бесконечной
лентой, то в общем случае нельзя. На практике нельзя уже при сколько-нибудь
значительном объёме памяти, просто в силу потребного времени.

  Т.е., общей процедуры доказательства правильности программ в принципе не
  существует. Однако, это не означает, что в частных случаях такое
  доказательство провести нельзя.
 Вопрос -то там был изначально в другом.
 А. Чуприна написал, что:
 В данном случае компиляция выполняется вместо тестов.  Тесты, в отличие от
 доказательства корректности, не являются гарантией надежности.

Верное утверждение.

 Т.е., подразумевал, что в этом случае возможен отказ от тестов.

На самом деле, он просто утверждает, что тестирование на примерах (т.е.,
твоё перечисление всех состояний, подав на вход все комбинации нулей и
единиц) ничего не гарантирует. Можно 1000 раз успешно прогнать *все*
комбинации входных переменных некой процедуры, а на 1001-м получить
ошибку, например, из-за утечки памяти, или из-за переполнения какой-нибудь
переменной-счётчика, которая не обнуляется между вызовами, и т.п.

 Мне кажется это сомнительным.
 По причине того, что полное доказательство, в принципе, провести невозможно (в
 зависимости от уровня сложности, конечно).

Похоже, что ты сам запутался в своих рассуждениях: тебя *принципиальная*
доказуемость интересует, или всё же доказуемость в частных случаях? С
первым всё ясно, а про второе тебе уже писали, что доказывать во многих
случаях можно, для этого есть методы, и методы эти не основаны на
переборе всех нулей и единиц.

  Например, существуют языки программирования, которые вычисляют через
  доказательство (через формальную процедуру вывода). PROLOG, например.
  На таких языках можно писать программы, которые сами же являются
  доказательствами своей правильности.
 Да, кстати, Пролог я не понимаю. :-(
 Изначально - всё просто. Затем, правила становятся какие-то дикие (к тому 
 месту,
 где начинается рекурсия и прочее). Хотя, может, в книжке было плохо описано.
 Но почему программа является априори правильной?

Я такого не утверждал. Что я утверждал, отквочено выше.

 Ведь она там - просто набор отношений, а Пролог - система вывода.
 Кто сказал, что данный набор отношений будет давать верный с точки зрения
 условий задачи результат на любом подмножестве входных данных?

Никто не сказал, однако:

Чем ближе язык программирования по синтаксису и семантике к формальному
описанию задачи, тем проще на нем написать верную программу. В случае
пролога, текст программы просто перефразирует исходное условие на языке
логики предикатов. Т.е., программа получается автоматически верной, если
условие задачи было успешно выражено на языке формальной логики и затем
записано в синтаксисе пролога. По сути, это всё, что требуется. Меньше
уже нельзя, без наделения машины интеллектом и знаниями о внешнем мире.

В прологе есть ещё одна особенность: предикаты пролога работают туда и
обратно. Например, имея предикат p(X), пролог может построить набор
значений X, при которых этот p(X) истинен. Используя это свойство можно
строить доказательства правильности, не выходя за рамки самого языка.
Например, если есть альтернативная реализация q(X), то проверка на
эквивалентность между p и q в прологе тривиальна.

В качестве ложки дёгтя замечу, что хотя, например, арифметику на прологе
можно реализовать прямо через аксиомы Пеано, так никто, ессно, не делает,
а вместо этого используются is и прочие встроенные примитивы. Ну а
поскольку в прологе нет типизации, то все это может закончиться теми
же ошибками, что и в любом другом языке...

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

Незнание, как говорится, не освобождает от ответственности. Плюс, в
идеальном мире все бы уже давно писали хотя бы на том же Haskell...

-- 
Stanislav


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

Anyone working on nova debconf templates?

2012-07-03 Пенетрантность Christian PERRIER
nova just got uploaded by Thomas Goirand. It's missing Spanish and
Russian among the Big 7 (languages that can reach 100% in wheezy).

As Thomas is here at Debconf, I can easily convince himto do another
upload but, for that, we'd need Russian and Spanish translations.

Can you guys who are coordinating these l10n teams check if things are
happening?

Many TIA.



-- 





signature.asc
Description: Digital signature