URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 94673
[ Назад ]

Исходное сообщение
"Релиз командного интерпретатора Bash 4.3"

Отправлено opennews , 27-Фев-14 13:56 
После трёх лет разработки вышла (http://ftp.gnu.org/gnu/bash/) новая версия командного интерпретатора GNU Bash 4.3 (http://www.gnu.org/software/bash/), используемого по умолчанию в большинстве  дистрибутивов Linux.

Из улучшений можно отметить:


-  Поддержка назначения и использования элементов массивов с отрицательными значениями индекса (напрмер, a[-1]=2, echo ${a[-1]}), при этом, отрицательное значение задаёт обратный отчёт с последнего элемента массива (a[-1] - предпоследний элемент и т.п.).
-  В командах return и exit добавлена возможность указания отрицательных кодов завершения работы;
-  В коде автодополнения имён файлов и команд обеспечено раскрытие переменных, определяющих часть пути. Если автодополнение связано с директорией, то в конце теперь добавляется символ "/";

-  Встроенная команда read теперь игнорирует нулевые байты при вводе;
-  При автодополении команды в коде сопоставления теперь игнорируются пробелы и операторы присваивания;
-  Опции "-nt" и "-ot" команды test теперь позволяют осуществлять проверки c  наносекундной точностью;

-  Механизм подстановки теперь допускает использование внутри блоков {}< специальных переменных (например, BASH_XTRACEFD) и выражений, подобных {array[ind]};
-  Добавлена переменная  BASH_COMPAT для управления совместимостью с прошлыми реализациями командой оболочки;

-  В cd добавлена опция "-@" для для просмотра расширенных атрибутов файла на системах с поддержкой O_XATTR;

-  В бинарном операторе test/[/[[ '-v variable' добавлена поддержка ссылок на массивы;

-  Изменения в библиотеке Readline:


-  Добавлена поддержка переменной colored-stats для организации выделения цветом разных типов файлов (цветной аналог visible-stats);
-  Добавлена переменная show-mode-in-prompt для включения индикации режима редактирования в приглашении командной строки;
-   Улучшена обработка поступления SIGHUP и других фатальных сигналов в процессе ввода;
-  Добавлены команды history-substring-search-forward и history-substring-search-backward для поиска по истории с учётом текущей позиции;
-  Обеспечено создание резервной копии файла с историей ввода и его восстановление при возникновении ошибки при записи в основной файл;


-  Улучшение встроенной системы подсказки. Для команды helptopic реализовано автодополнение всех разделов помощи, а не только встроенных команд. Изменён порядок выборки ключевых слов поиска, вместо выборки по маске теперь вначале осуществляется проверка точного совпадения;

-  Добавлена возможность сборки оболочки с отключением вывода сообщений о завершении процессов по SIGTERM;

-  Добавлена новая опция globasciiranges, при активации которой в операциях сортировки принудительно используется порядок символов, определённый в локали C;


-  Попытка определения  в режиме POSIX  функции, имя которой пересекается с предопределёнными функциями, теперь приводит к выводу ошибки;

-  Указание в переменных HISTSIZE, history-size и HISTFILESIZE  отрицательных значений теперь воспринимается как снятие ограничений на число элементов списка и размер файла с историей операций;

-  Добавлена новая опция "bind -X", которая выводит список привязки всех клавиатурных комбинаций с командам Unix;

-  История ввода команд теперь сохраняется для всех сеансов оболочки, а не только интерактивных;

-  Поддержка переменных nameref, опций -n(/+n) для их установки и команды "test -R" для их проверки;

-  Добавлена переменная CHILD_MAX для управления числом запоминаемых состояний завершения выполнения дочерних процессов;

-  Добавлена опция сборки "--enable-direxpand-default" для включения по умолчанию опции direxpand;

-  Во встроенную команду wait добавлена опция "-n" для ожидания изменения статуса следующего дочернего процесса;

-  При указании %(...)T в printf без явного указания аргументов формата теперь выводится текущее время.


URL: http://ftp.gnu.org/gnu/bash/
Новость: https://www.opennet.ru/opennews/art.shtml?num=39205


Содержание

Сообщения в этом обсуждении
"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 13:56 
Молодцы, что постепенно развиваются, стагнация=смерть.

> История ввода команд теперь сохраняется для всех сеансов оболочки, а не только интерактивных

Что за ерунда. У меня в .bash_history будет вывод всех запускавшихся на хосте скриптов?


"Релиз командного интерпретатора Bash 4.3"
Отправлено Fracta1L , 27-Фев-14 14:13 
Как-то они мамонтово развиваются, крохоборят. Давно пора уже становиться модулем systemd.

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 14:23 
не болтай ерунды.

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 14:29 
В ближайшей перспективе чести стать частью systemd может удостоиться разве что util-linux. Учитывая, что их разработчики работают в смежных отделах одной конторы.

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 14:25 
Правильно. Все равно в качестве интерактивного шелла zsh удобнее. А так хоть в systemd поддержка bash-скриптов будет.

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 14:54 
Systemd не является проектом GNU. Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.

"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 27-Фев-14 16:13 
> Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.

он («правильный») давно есть и работает, его не надо переписывать.


"Релиз командного интерпретатора Bash 4.3"
Отправлено адекват , 27-Фев-14 17:01 
>он («правильный») давно есть и работает, его не надо переписывать.

но ментейнеры большинства дистиибутивов, видимо, получают мощнейшую эрекцию при прочтении заявленых возможностей systemd, вся кровь от мозга отливает, и они становятся не способны критически оценивать последствия своих решений.
как следствие - выпиливается действующая система инициализации и грубо (без вазелина) впиливается systemd.


"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 27-Фев-14 17:35 
некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты, которых опыт с пульсой ничему не научил, и никакой другой опыт никогда ничему не научит.

некоторые — просто мастеры-ломастеры, чующие «родную душу».

а некоторые — всё понимают, но по каким-то своим причинам хотят превратить пингвинус в очередную винду.

собственно, ничего шибко неожиданного нет. хоть и печально.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 18:36 
> некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты, которых опыт с пульсой ничему не научил, и никакой другой опыт никогда ничему не научит.
> некоторые — просто мастеры-ломастеры, чующие «родную душу».
> а некоторые — всё понимают, но по каким-то своим причинам хотят превратить пингвинус в очередную винду.

Но все как один - разработчики линуксовых дистров.
А все протестуны против системды - в большинстве своем пользователи, причем преимущественно не линукса.
Видимо, трезвый, свободный от заблужедний, ум дарован только подоконникам.


"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 27-Фев-14 18:47 
> А все протестуны против системды - в большинстве своем пользователи, причем преимущественно
> не линукса.

статистику в студию.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 01:22 
>Видимо, трезвый, свободный от заблужедний, ум дарован только подоконникам.

А потому что есть с чем сравнивать. У Линукса есть свои особенности и зачастую именно они и привлекают юзверей других ОС, потеряв их, Линукс утратит свою привлекательность. Проще говоря: вторая (недо)В-нда не нужна. И вообще, попытки превратить Линукс в В-нду или МакОСь со стороны смотрятся дико - почему сразу не заюзать их, а пыжиться сделать Линукс-суррогат?


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аннонимусс , 28-Фев-14 05:49 
Патамушта иногда требуется ОСь для людей далеких от ИТ с привычками , сформированнными на винде.

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 06:07 
> ...ОСь для людей далеких от ИТ...

...уже есть, и не одна.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Vkni , 28-Фев-14 07:47 
> Патамушта иногда требуется ОСь для людей далеких от ИТ с привычками ,
> сформированнными на винде.

Ну так берите винду и не парьтесь. Она, между прочим, с любым компом идёт.

Кстати, для "далёких от ИТ" лучше подойдёт не винда, а бесплатная ОSX.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 19:21 
>> некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты, которых опыт с пульсой ничему не научил, и никакой другой опыт никогда ничему не научит.
>> некоторые — просто мастеры-ломастеры, чующие «родную душу».
>> а некоторые — всё понимают, но по каким-то своим причинам хотят превратить пингвинус в очередную винду.
> Но все как один - разработчики линуксовых дистров.

Ложь.

> А все протестуны против системды - в большинстве своем пользователи, причем преимущественно
> не линукса.

Ложь.


"Релиз командного интерпретатора Bash 4.3"
Отправлено vi , 28-Фев-14 11:42 
> некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты,
> которых опыт с пульсой ничему не научил, и никакой другой опыт
> никогда ничему не научит.
> некоторые — просто мастеры-ломастеры, чующие «родную душу».
> а некоторые — всё понимают, но по каким-то своим причинам хотят превратить
> пингвинус в очередную винду.
> собственно, ничего шибко неожиданного нет. хоть и печально.

Ну вот, Вы снова прицепились к этому systemd ;)
Хотя речь идет про Bash.
И не все так грустно как Вам кажется https://www.opennet.ru/openforum/vsluhforumID3/94561.html#85
Или лично Вам придется произвести огромный объем работы по переводу ваших ОС/ПО/Проектов с одной системы инициализации на другую? Тогда, если можно, список в студию! А то вдруг я использую Ваш продукт, и об вашем авторстве мне неизвестно :( Плюс ко всему, придется перестать обновлять (ну скажем одну из виртуальных машин) систему, что бы Ваш ценный сервис не упал (вдруг ;)
И да, в systemd есть поддержка запуска скриптов (или это только в документации).


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 18:38 
> он («правильный») давно есть и работает, его не надо переписывать.

Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и то свой лисапед сварганили и продвигают.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 18:45 
>> он («правильный») давно есть и работает, его не надо переписывать.
> Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и
> то свой лисапед сварганили и продвигают.

Видимо, потому, что людям нужна не эфемерная "идеологическая правильность", а реальная эффективность, то есть способность решать существующие проблемы. Решать в 2014 году задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное и неоптимальное занятие.


"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 27-Фев-14 18:49 
> Решать в 2014 задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное
> и неоптимальное занятие.

выкинь свой компьютер — это реально технологии середины прошлого века.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Deffic , 27-Фев-14 19:09 
Разрешите Вас попроавить:
то есть способность решать СИЮМИНУТНЫЕ проблемы.


>>> он («правильный») давно есть и работает, его не надо переписывать.
>> Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и
>> то свой лисапед сварганили и продвигают.
> Видимо, потому, что людям нужна не эфемерная "идеологическая правильность", а реальная
> эффективность, то есть способность решать существующие проблемы. Решать в 2014 году
> задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное
> и неоптимальное занятие.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Vkni , 28-Фев-14 00:48 
> Решать в 2014 году
> задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное
> и неоптимальное занятие.

Солнце моё, до технологий 1980-х нынешние писюки ещё не добрались.


"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 27-Фев-14 18:48 
>> он («правильный») давно есть и работает, его не надо переписывать.
> Только почему-то никому нафиг не сдался в XXI веке.

отучаемся вещать за всю сеть.


"Релиз командного интерпретатора Bash 4.3"
Отправлено ананим , 27-Фев-14 20:10 
> Даже гентушники, и то свой лисапед сварганили и продвигают.

Openrc работает с init (или runit), а не вместо.
Неуч, а всё туда же — других учить.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 06:15 
> Только почему-то никому нафиг не сдался в XXI веке.

Вот пришел "дваццатьпервый век", и сразу все нужно с ног на голову перевернуть, все равно что и как, но лишь бы не так, как раньше.


"Релиз командного интерпретатора Bash 4.3"
Отправлено vi , 28-Фев-14 11:47 
>> он («правильный») давно есть и работает, его не надо переписывать.
> Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и
> то свой лисапед сварганили и продвигают.

Вы наверное имеете в виду openrc?
Но тут (имхо) PID1 и система инициализации в одном флаконе (или я чего то недопонимаю).


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 18:37 
> Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.

Один чувак с лора как-то написал товарищу Столману письмо с вопросом "что вы думаете о systemd?". И Столман даже ответил ему, примерно в таком духе: "ничего плохого в systemd не вижу".


"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 27-Фев-14 18:53 
«да слышал я этого вашего Карузо: фигня какая-то. мне Рабинович вчера напел!»

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 06:16 
По телефону...

"Релиз командного интерпретатора Bash 4.3"
Отправлено dq0s4y71 , 27-Фев-14 19:23 
Столлману главное чтоб он под GPL был ;)

"Релиз командного интерпретатора Bash 4.3"
Отправлено SergMarkov , 27-Фев-14 22:19 
>> Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.
> Один чувак с лора как-то написал товарищу Столману письмо с вопросом "что
> вы думаете о systemd?". И Столман даже ответил ему, примерно в
> таком духе: "ничего плохого в systemd не вижу".

Да что там столлмен, если даже патрегх  сказал "интересная вещь" .. :-)



"Релиз командного интерпретатора Bash 4.3"
Отправлено crz , 28-Фев-14 15:21 
Он ответил примерно в таком духе: я не разбирался в системде, чтоб иметь мнение об этом, но то что оно линуконли - существенный минус.

"Релиз командного интерпретатора Bash 4.3"
Отправлено AX , 27-Фев-14 19:12 
>модулем systemd.

Зачем им баш, когда Поццеринг уже давно пилит собственный ini based programming language? Вон ветвления уже реализовали, правда пока весьма плохенькие, но по мере перехода на systemd всё большего и большего числа людей это наверняка исправят. Думаю, лет через 5-10 они уже догонят стандартный шелловский test.

Осталось только дождаться реализации циклов и полноценного ООП (благо наследование там уже реализовано, см. drop-in)


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 09:18 
>ini based programming language

скорее xml based programming language


http://www.ibash.org.ru/quote.php?id=14145


"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 28-Фев-14 13:24 
ребята не в курсе, что оно уже есть. счастливые…

"Релиз командного интерпретатора Bash 4.3"
Отправлено Пр0х0жий , 28-Фев-14 19:18 
>> История ввода команд теперь сохраняется для всех сеансов оболочки, а не только интерактивных
> У меня в .bash_history будет вывод всех запускавшихся на хосте скриптов?

Сразу не заглядывая никуда и навскидку:
'История _ввода_ команд'
Предполагаю это будет (в самом начале):
https://www.opennet.ru/base/sys/bash_tips.txt.html

Народ держаший руками, подсказвал не так давно, что в этом плане лучше был zsh.
По моему скромному, в bash, это очень полезная фича.


"Релиз командного интерпретатора Bash 4.3"
Отправлено тазовод , 27-Фев-14 14:28 
не понял, что добавили в cd. Просмотр??

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 16:10 
> не понял, что добавили в cd. Просмотр??

$ cd /root
bash: cd: /root: Permission denied

если есть xarrt, они при ошибке будут показаны.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 18:40 
> $ cd /root
> bash: cd: /root: Permission denied
> если есть xarrt, они при ошибке будут показаны.

Разве права доступа - это xattr? А если нет - зачем их показывать?


"Релиз командного интерпретатора Bash 4.3"
Отправлено близняшко , 27-Фев-14 14:34 
%(...)T в printf такой гемор. до сих пор удобнее использовать форк и вывод date.

"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 27-Фев-14 14:35 
Дайте float и double, хочу mp3 плеер на баше!  

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 14:59 
А long double, complex не хочешь? И bash в качестве замены всяких там матлабов? :)

"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 27-Фев-14 15:42 
дудик, complex это вектор, в компьютерах - массив.  

"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 28-Фев-14 01:30 
Как математик вынужден констатировать, что дудиком являетесь как раз вы. Комплексные числа это ни разу не вектор и обычным массивом не являются.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 02:00 
Таки вектор. Вещественная и мнимая оси образуют плоскость, на которой можно откладывать радиус-вектора, то бишь, конкретные комплексные числа.

Ну а вектор в этих ваших ЭВМ представляется массивом как раз. В некоторых языках массивы так и именуются векторами.


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 28-Фев-14 03:38 
На пальцах
a и b массивы
c и d комплексные числа
Что будет результатом следующих операций:
a+b
c+d
a*b
c*d
sin(a)
sin(c)

Аналогично можно сравнить по возможным операциям с векторами и понять, что вектора это не массивы и не комплексные числа.



"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 28-Фев-14 17:17 
>  вектора это не массивы

Сколько классов закончили? :D  

МАССИВ - это куча дерьма, что ты с ним дальше будешь делать, так это и назовут
Прикинь даже так можно: int ARRAY[0]; массив есть, а элементов нет. Пичалька.


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 28-Фев-14 20:43 
Куча дерьма != вектор. Сюрприз?



"Релиз командного интерпретатора Bash 4.3"
Отправлено nanashi , 05-Мрт-14 13:29 
Северный наш друг, а сходи-ка ты почитай, что такое "массив", а что - "вектор". Например, C++ STL тебе в этом очень даже поможет. А затем, прихватив с собой своего начальника i.e. Санта-Клауса, возвращайся в наш уютненький Лор. С любовью и лобызанием к твоему мозгу, Анон.

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 01-Мрт-14 01:42 
> На пальцах
> a и b массивы
> c и d комплексные числа
> Что будет результатом следующих операций:

Демагогия. Пока не определено, что это за язык, не определена и семантика этих операций. Дальнейшие рассуждения пусты.


"Релиз командного интерпретатора Bash 4.3"
Отправлено anonymous , 28-Фев-14 09:34 
>Как математик

Ну вот и не лезьте в программирование. С точки зрения программы комплексные числа можно представить вектором, это всего лишь способ хранения данных. А операции с ними всегда можно определить как душе угодно.


"Релиз командного интерпретатора Bash 4.3"
Отправлено yekm , 28-Фев-14 12:35 
Ага, ага. А ещё компьютеры занимаются только поиском и сортировкой. С точки зрения программы.
А вы тут bash, systemd... Да это же одно и тоже получается! Они просто определили порядок операций как душе угодно.

"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 28-Фев-14 16:31 
Я еще и программист. Представь себе. И в отличии от тебя не вижу смысла в использовании массивов даже для хранения составных частей(ты хоть в курсе, что re и im это не единственный вариант представления?) комплексных чисел. Не говоря уже о таком бреде как переопределение операций для массивов.
И еще раз для тупых, вектор это не одномерный массив. Также как двумерный массив не является матрицей.
Если уж так хочется дать компьютерный термин, то в большинстве языков общего назначения  вектора, комплексные числа и матрицы реализуются в виде классов. Разницу между классом, даже использующим массивы, и просто массивом объяснять надо?


"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 28-Фев-14 17:30 
> И еще раз для тупых, вектор это не одномерный массив. Также как двумерный массив не является матрицей.

И ЕЩЁ РАЗ ДЛЯ УПОРОТЫХ: Число, комлексн. число, квантернионы, вектора, матрицы, тензоры,... - МАССИВЫ


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 28-Фев-14 20:39 
С точки зрения людей, незнающих математику и программирование - почему бы и нет. Жду дальнейших откровений, может еще физиков порадуете, рассказав им, что килограмм, метр, секунда и даже килограмм-метр на секунду в квадрате это все float. Жгите, не стесняйтесь.

"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 02-Мрт-14 01:33 
> С точки зрения людей, незнающих математику и программирование - почему бы и
> нет. Жду дальнейших откровений, может еще физиков порадуете, рассказав им, что
> килограмм, метр, секунда и даже килограмм-метр на секунду в квадрате это
> все float. Жгите, не стесняйтесь.

Слив засчитан.


"Релиз командного интерпретатора Bash 4.3"
Отправлено vlikhachev , 28-Фев-14 20:47 
>> И еще раз для тупых, вектор это не одномерный массив. Также как двумерный массив не является матрицей.
> И ЕЩЁ РАЗ ДЛЯ УПОРОТЫХ: Число, комлексн. число, квантернионы, вектора, матрицы, тензоры,...
> - МАССИВЫ

Не структуры (комплексн. число как структра из 2 union навскидку), не примитивные типы (число), а именно МАССИВЫ?
Обязательно целое как array of(binary coded decimal)?
Хорошо ли Вы подумали, уважаемый?


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 01-Мрт-14 00:59 
>Если уж так хочется дать компьютерный термин, то в большинстве языков общего назначения  вектора, комплексные числа и матрицы реализуются в виде классов

epicfacepalm.png.gz

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


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 01-Мрт-14 02:20 
Деточка, ты ведь даже не понял, о чем я говорил, а лезешь советовать. Программирование на уровне "комплексные числа это вектор, а вектор это массив" серьезно уступает по сложности математике последних классов средней школы. Первый курс мехмата таким погромистам просто мозг разорвет. А Computer science это отнюдь не то, чем вы занимаетесь.



"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 01-Мрт-14 13:16 
Понты тут кидать не надо, для выпускника университета это унизительно должно быть. Ты давай предметно покажи, почему вектор - не массив, а комплексные числа нужно представлять классом и ни в коем случае не как массивом.

На закуску:

#include <complex.h>
#include <stdio.h>

int main(void)
{
    double complex test = 5.0 + 2.0 * I;
    printf("Real: %f, Imag: %f\n", creal(test), cimag(test));

    double *array = (double *) &test;
    printf("Real: %f, Imag: %f\n", array[0], array[1]);

    return 0;
}

Результат:
Real: 5.000000, Imag: 2.000000
Real: 5.000000, Imag: 2.000000

Где твой бог теперь?


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 01-Мрт-14 22:52 
Ну и что ты показал? Что C/C++ позволяет на низком уровне работать с памятью и одним переменным присваивать адреса других? Так это ни для кого не секрет. Или ты хотел показать, что к последовательно лежащим в памяти переменным можно обратится как к массиву?

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

Ну и настоятельно рекомендую заглянуть в реализацию complex и задуматься, почему нужно было все это делать, если согласно умникам достаточно было просто объявить массив.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 02-Мрт-14 00:24 
>А потом попробуй хотя бы сложить или перемножить две переменных, которых ты определил как double *.

Вот, смотри, складываю A и B и записываю результат в C:

C[0] = A[0] + B[0];
C[1] = A[1] + B[1];

Ты от вопроса-то не уходи. Ты говорил, что вектор - это не массив? Ты говорил, что комплексное число - не вектор? Говорил. Но никаких обоснований, кроме "я математик, а ты дурак, иди читай википедию", от тебя так и не было.


"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 02-Мрт-14 02:08 
> Ты от вопроса-то не уходи. Ты говорил, что вектор - это не  массив?
> Ты говорил, что комплексное число - не вектор? Говорил. Но никаких обоснований,
> кроме "я математик, а ты дурак, иди читай википедию",  от тебя так и не было.

Это будет означать, что он зря закончил Одесский универ., он с этим не смерится. :D  


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 02-Мрт-14 22:34 
Ты прикидываешься дураком или реально не понимаешь? Не видишь разницу между сложением массивов и сложением отдельных элементов массива, то бишь сложением скаляров? Просто хранить циферки в ячейках памяти совсем недостаточно, нужен определенный набор операций, которые над ними можно произвести. Именно набор операций определяет что перед нами - массив, вектор, комплексное число или еще какая сущность. А без этого будут просто биты в ячейках памяти, ну или прыжки электронов в полупроводниках или вообще флуктуации вакуума, смотря до какого уровня опускаться.


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 02-Мрт-14 23:50 
>Ты прикидываешься дураком или реально не понимаешь?

Учитывая вот это и общие затруднения в выражении и аргументировании собственной точки зрения, я считаю, что Одесский Государственный Университет может гордиться своим выпускником.

>Не видишь разницу между сложением массивов и сложением отдельных элементов массива, то бишь сложением скаляров?

Это тут при чем вообще? Ты просил "сложить или перемножить две переменных, которых ты определил как double *", вот я и сложил их.

>Просто хранить циферки в ячейках памяти совсем недостаточно, нужен определенный набор операций, которые над ними можно произвести

Определи функцию add_complex_numbers(double*, double*, double*) и еще какие тебе нужны. Можешь даже еще заtypedefить double* на my_complex_t, вообще красота будет.

>Именно набор операций определяет что перед нами - массив, вектор, комплексное число или еще какая сущность

Это очень голословное и спорное утверждение. Обосновывай.

Ну и про то, что вектор - не массив и пр., я так и не услышу объяснений?


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 03-Мрт-14 08:13 
>>Ты прикидываешься дураком или реально не понимаешь?
> Учитывая вот это и общие затруднения в выражении и аргументировании собственной точки
> зрения, я считаю, что Одесский Государственный Университет может гордиться своим выпускником.

Если ты, в отличии от большинства, не понимаешь моей аргументации, то чьи это проблемы? Да, при желании я могу опустится до очень низкого уровня знаний и разжевать хоть ядерную физику ученику младших классов. Вот только нормально это сделать можно только при устной беседе, так как там на выяснение уровня знаний собеседника и его основных заблуждений уходит от пары минут до получаса. А в форумной переписке на это могут уйти недели.

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


>>Именно набор операций определяет что перед нами - массив, вектор, комплексное число или еще какая сущность
> Это очень голословное и спорное утверждение. Обосновывай.

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

> Ну и про то, что вектор - не массив и пр., я
> так и не услышу объяснений?

Я уже несколько раз объяснил. Попробую еще одним способом, но это уже последний раз. Для доказательства тождественности требуется показать, что первая сущность всегда является второй и наоборот. Однако мы можем показать полностью обратное.
1. Вектор может быть удобно представлен без массивов вообще. Например структурой/хешем/записью. То бишь если у нас есть вектор, то вовсе не обязательно его данные хранятся в виде массива.
2. Массивы могут хранить не данные вектора, а какие либо другие. Например массив символов. То бишь, если перед нами массив, то вовсе не обязательно, что в нем данные вектора.
Получается правильный вопрос будет, не чем они различаются, а что вообще есть общего у вектора и массива?


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 03-Мрт-14 12:43 
>Если ты, в отличии от большинства, не понимаешь моей аргументации, то чьи это проблемы?

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

>Я уже несколько раз объяснил.

Где?

>Для доказательства тождественности требуется показать, что первая сущность всегда является второй и наоборот. Однако мы можем показать полностью обратное.
>skip

1. Вектор может быть удобно представлен без классов вообще. Например структурой/хешем/записью (или массивом, лол). То бишь если у нас есть вектор, то вовсе не обязательно его данные хранятся в виде объекта класса.
2. Объекты могут хранить не данные вектора, а какие либо другие. Например массив символов. То бишь, если перед нами объект, то вовсе не обязательно, что в нем данные вектора.
Получается правильный вопрос будет, не чем они различаются, а что вообще есть общего у вектора и класса?


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 04-Мрт-14 08:18 
Ну и сказать то этим что хотел? Или ты придумал за меня утверждение "вектор это класс" и героически его опроверг? Ну поздравляю, успехов в сражении с ветряными мельницами.

"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 02-Мрт-14 02:07 
> Если ты вдруг забыл, то речь шла о комплексных числах, прочитай в вике

Точно идиот

---
Геометрическая модель

Геометрическое представление комплексного числа
Рассмотрим плоскость с прямоугольной системой координат. Каждому комплексному числу z=x+iy сопоставим точку плоскости с координатами {x,y}
(а также радиус-вектор, соединяющий начало координат с этой точкой). Такая плоскость называется комплексной (или плоскостью Аргана).
Вещественные числа на ней занимают горизонтальную ось, мнимая единица изображается единицей на вертикальной оси; по этой причине
горизонтальная и вертикальная оси называются соответственно вещественной и мнимой осями.

Часто бывает удобно рассматривать на комплексной плоскости также полярную систему координат, в которой координатами точки являются
расстояние до начала координат (модуль) и угол радиус-вектора точки (показанного синей стрелкой на рисунке) с горизонтальной осью (аргумент).

В этом наглядном представлении сумма комплексных чисел соответствует векторной сумме соответствующих радиус-векторов.
При перемножении комплексных чисел их модули перемножаются, а аргументы складываются. Если модуль второго сомножителя равен 1,
то умножение на него геометрически означает поворот радиус-вектора первого числа на угол, равный аргументу второго числа.
Этот факт объясняет широкое использование комплексного представления в теории колебаний, где вместо терминов «модуль» и «аргумент»
используются термины «амплитуда» и «фаза». Геометрическая модель комплексных чисел широко используется в планиметрии: многие планиметрические
теоремы можно доказать как некоторые комплексные тождества. Часто этот метод даёт наиболее простое доказательство.


Пля, мы это ещё в первом семестре учили, мож на втором.


Дальше... Комплексное число - это, следует из его названия, - составное число, для его представления в компьютерах используются
составные объекты: массивы, структуры, объединения, классы, ... Самым простейшим из них является МАССИВ. Если тя в попу клюнуло,
и хочется Im z сделать float, Re z - int, то создаёшь структуру, и дальше по мере усложнения. Хоть язык свой напиши, на простр-ве ℂ


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 02-Мрт-14 22:37 
Может вам и объясняли, но ты похоже так и не понял, что геометрическая модель комплексного числа не есть комплексное число. Про идиота ты очень самокритично заметил, но не расстраивайся, просто математика это не твое, но ведь есть другие области, IT например.

"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 02-Мрт-14 01:34 
> Деточка,

"... ваше место возле ... "©


"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 28-Фев-14 17:13 
> Комплексные числа это ни разу не вектор и обычным массивом не являются.

:popcorn:

Где таких математиков учат, можно узнать? Ну чтоб на работу случайно не принять.


"Релиз командного интерпретатора Bash 4.3"
Отправлено angra , 28-Фев-14 20:41 
Без проблем. Одесский Государственный Университет, факультет классической математики. Можешь не переживать, на собеседовании мы точно не встретимся.


"Релиз командного интерпретатора Bash 4.3"
Отправлено pavlinux , 02-Мрт-14 01:51 
> факультет классической математики.

На, там читай, надоел ..

http://ru.wikipedia.org/wiki/%D0%92%D0%B...

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

Заодно и тут, узнаешь, что такое кватернион и ваще гиперкомплексные числа.
http://ru.wikipedia.org/wiki/%D0%9A%D0%B...


"Релиз командного интерпретатора Bash 4.3"
Отправлено Nicknnn , 27-Фев-14 15:11 
Ну можно немного схитрить :)

$ cat dummy_play.sh
#!/bin/bash
python -c '

print "Hello world"

'
$


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 27-Фев-14 16:12 
Чем оно лучше zsh?

"Релиз командного интерпретатора Bash 4.3"
Отправлено SergMarkov , 27-Фев-14 20:29 
mksh лутше

"Релиз командного интерпретатора Bash 4.3"
Отправлено crz , 27-Фев-14 21:40 
факториал 20 подсчитает верно?

"Релиз командного интерпретатора Bash 4.3"
Отправлено SergMarkov , 27-Фев-14 22:17 
> факториал 20 подсчитает верно?

за  каким для этого нужон что тот что этот? :-)



"Релиз командного интерпретатора Bash 4.3"
Отправлено crz , 27-Фев-14 22:50 
чтоб сравнить тот и этот в одной задаче))

"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 28-Фев-14 03:33 
Еще графические примитивы туда добавить.

"Релиз командного интерпретатора Bash 4.3"
Отправлено EuPhobos , 28-Фев-14 13:05 
Забавно, только сегодня обнаружил баг с крашем в BASH_4.2.45
Нужно будет проверить на 4.3

"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 28-Фев-14 14:00 
> Забавно, только сегодня обнаружил баг с крашем в BASH_4.2.45
> Нужно будет проверить на 4.3

описать, конечно, лапки отсохнут.


"Релиз командного интерпретатора Bash 4.3"
Отправлено EuPhobos , 28-Фев-14 14:31 
Когда я писал пост, я пока не нашёл в чём проблема.
Вот пример
создаём пайп

mkfifo /tmp/test.fifo

создаём петлю в скрипте


#!/bin/bash
fifo=/tmp/test.fifo
while [ -p "$fifo" ]; do
    read -t0 line <>$fifo
done

Запускаем петлю, и в другом терминале пытаемся писать в пайп

echo "bla-bla-bla" > /tmp/test.fifo

получаем краш второго терминала, там где пытаемся писать в пайп.

Проверил на bash_4.3 так же. Заметил что краш проиcходит только на 64-битных системах.
Пока дальше ковыряюсь..  >_>


UPD:
Более простой пример:
создаём пайп

mkfifo /tmp/test.fifo

пишем в пайп
echo "test" > /tmp/test.fifo
- так как никто не читает, то echo у нас не завершается.
Во втором терминале читаем с таймаутом в 0
read -t0 <>/tmp/test.fifo
и у нас крашится первый терминал с "echo".
Если читаем с таймаутом 1 то всё отрабатывает нормально
read -t1 <>/tmp/test.fifo
, тут мы прочитаем то что передаёт echo, и echo завершается корректно.

"Релиз командного интерпретатора Bash 4.3"
Отправлено arisu , 28-Фев-14 14:33 
вот же люди, а! ничего в руки нельзя дать — сразу поломают! ;-)

"Релиз командного интерпретатора Bash 4.3"
Отправлено vlikhachev , 28-Фев-14 20:50 
> skipped

Дзззз...кряк! - сказала японская бензопила, и не смогла перепилить рельс...
Аааа, бл$я! - сказали сибирские лесорубы...



"Релиз командного интерпретатора Bash 4.3"
Отправлено EuPhobos , 28-Фев-14 21:03 
> Дзззз...кряк! - сказала японская бензопила, и не смогла перепилить рельс...
> Аааа, бл$я! - сказали сибирские лесорубы...

Нууу.. на самом деле как то так и есть, т.к. я пишу игровой сервер на баше ;)


"Релиз командного интерпретатора Bash 4.3"
Отправлено Аноним , 01-Мрт-14 13:15 
А в zsh все работатет.