Где тут раздел для флуда?

Здесь можно поговорить о чём угодно и сколько угодно.

Модератор: Модераторы разделов

Shushandr
Сообщения: 86
ОС: Gentoo

Где тут раздел для флуда?

Сообщение Shushandr »

Ну, это когда человек, я, ничего не знаю, но очень хочется поговорить.

В общем, представьте себе консольные программы, у них есть стандартный поток ввода и стандартный поток вывода. А ещё у них есть способ обращаться к функциям операционной системы.

Можно было бы не передавать потоки ввода и вывода, а вместо них предоставить системные вызовы, которые их возвращают? Наверное да, но тогда это знание, какой программе какие потоки нужны, пришлось бы держать в ядре, а так оно вроде бы как в пространстве процессов.

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

Кроме bash существует PowerShell, в котором на вход подаются не файлы, а объекты, и на выходе они же формируются. И там сложный механизм связывания.

Вопросов у меня несколько:
1) почему надо было передавать именно объекты, а не, скажем, указатели на интерфейсы?
2) почему не сделали альтернативу для PowerShell на Java? Ведь всё Java-вское переписывают на .Net, а обратно это зашквар?
3) можно ли придумать нелинейный синтаксис для командной строки? Чтобы компоненты соединялись не цепочкой/деревом, а вообще произвольным графом. Это же вроде бы логично? Даже у консольных программ выходов два - stdout и stderr. Почему бы не передавать дальше на обработку каждый из них? (для этого надо уметь делать компоненты не только с несколькими выходами, но и с несколькими входами).

Для того, чтобы передача файлов от программы к программе заработала надо было написать стандарт POSIX. Появился ли уже новый стандарт (как документ-спецификация) на основе передачи объектов вместо файлов?
Спасибо сказали:
Аватара пользователя
Ater
Сообщения: 170
Статус: Дважды Будда Советского Союза
ОС: Gentoo

Re: Где тут раздел для флуда?

Сообщение Ater »

Не плодите сущности сверх необходимого (с)
Ну зачем все усложнять? Какой в этом практический смысл? Упрощение разработки?
И чем плох существующий механизм? Не холивара для, просто действительно интересно Ваше мнение. Если что-то предлагаете, то какие аргументы за, какие против?

ПыСы. Раздел для флуда уже тут :rolleyes:
Азъ есмь БҌшеный Їзюмъ
Спасибо сказали:
Shushandr
Сообщения: 86
ОС: Gentoo

Re: Где тут раздел для флуда?

Сообщение Shushandr »

Ater писал:
03.01.2024 11:01
Не плодите сущности сверх необходимого (с)
Плодитесь и размножайтесь (q) Библия, Бытие 1, стих 28
Ater писал:
03.01.2024 11:01
Ну зачем все усложнять?
Если звёзды зажигают, значит это кому-нибудь нужно (q) Маяковский, стихотворение "Послушайте!"

Надо повышать уровни абстрагирования от машинных к человеческим. Алиса, завари два чая.
Спасибо сказали:
Аватара пользователя
Ater
Сообщения: 170
Статус: Дважды Будда Советского Союза
ОС: Gentoo

Re: Где тут раздел для флуда?

Сообщение Ater »

Чуть пофлужу и поразмышляю.
Shushandr писал:
03.01.2024 12:06
Плодитесь и размножайтесь (q) Библия, Бытие 1, стих 28
Кхм. Неисповедимы приколы господни (с) я.
Shushandr писал:
03.01.2024 12:06
Если звёзды зажигают, значит это кому-нибудь нужно (q) Маяковский, стихотворение "Послушайте!"

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

Насчет нескольких входов/выходов для программ, идея довольно интересная, в плане параллелизации вычислений. Есть над чем подумать. Есть, например, N входов у некой проги "мегачтото", M выходов, внутри сильное колдунство. Должны ли быть N и M константами или определяться/изменяться в момент... старта проги? Внезапного появления выхлопа другой проги, который пытается поступить на вход "мегачтото"? Вот как это должно определяться? Задача (ИМХО) довольно нетривиальная. Если софтина УЖЕ работает и принимает выхлоп от другой, то все пучком, в параллельных потоках можно принять выхлоп от 100500 других программ. Далее. Должны ли эти данные как-то между собой пересекаться? Кому именно должен быть отдан вывод, и какой именно? А если запускается по отработке другой проги (напр., cat ./mytext | <суперпрога> | (выход 1.) grep <трулюлю> (выход 2.) mtr <траляля>), как в таком случае быть? Что грепать, что трейсить?

Это я к тому, что сама идея - очень хороша. Сам думаю о чем-то наподобие. Но четкой концепции пока выстроить не удается. Давайте обсудим.

И вот еще, для размышлений, например. Алиса, убей соседей, что мешают спать. Ну или электричество им отключи, ага? (это такой намек на зависимость нынешних мешков с мясом от "инновационных технологий").
Азъ есмь БҌшеный Їзюмъ
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20934
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Где тут раздел для флуда?

Сообщение Bizdelnick »

Shushandr писал:
03.01.2024 09:00
почему не сделали альтернативу для PowerShell на Java? Ведь всё Java-вское переписывают на .Net, а обратно это зашквар?
JShell — это не оно?
Shushandr писал:
03.01.2024 09:00
можно ли придумать нелинейный синтаксис для командной строки? Чтобы компоненты соединялись не цепочкой/деревом, а вообще произвольным графом. Это же вроде бы логично?
википедия://KISS (принцип)
Shushandr писал:
03.01.2024 09:00
Для того, чтобы передача файлов от программы к программе заработала надо было написать стандарт POSIX.
До стандарта тоже неплохо работало. Стандарт — он чтобы зафиксировать то, что уже есть, а не новое придумать.
Shushandr писал:
03.01.2024 12:06
Если звёзды зажигают, значит это кому-нибудь нужно
Вот кому нужно, те пусть и зажигают. ☺
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали: