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

Исходное сообщение
"Опубликована командная оболочка fish 4.0, переписанная на языке Rust"

Отправлено opennews , 28-Фев-25 22:32 
Состоялся релиз интерактивной командной оболочки fish 4.0.0 (friendly interactive shell), нацеленной на создание более дружественной пользователю альтернативы bash и zsh. Fish поддерживает такие возможности как подсветка синтаксиса с автоматическим выявлением ошибок ввода, предложение возможных вариантов ввода на основе истории прошлых операций, автодополнение ввода опций и команд с использованием их описания в man-руководствах, комфортная работа из коробки без необходимости дополнительной настройки, упрощённый язык написания сценариев, поддержка буфера обмена, средства поиска в истории выполненных операций. Код проекта распространяется под лицензией GPLv2. Готовые пакеты сформированы для Ubuntu, Debian, Fedora и openSUSE...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=62811


Содержание

Сообщения в этом обсуждении
"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 22:32 
Не POSIX совместимо. Опять поделка уровня привет мир.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 22:58 
Напомню что линукс это "mostly POSIX-compliant".
В отличии например от макоси.
Так что над№№№вать на ПОФИГС можно но абсолютно бессмысленно.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено grand , 01-Мрт-25 00:44 
>В отличии например от макоси.

Хоооороошая операционная система ! Хааарошей архитектуры!
>"mostly POSIX-compliant" линукс

напротив операционная система плохая. Распухшее, плохо администриуемое моноядро , практически невозможно перевести на прогрессивные безопасные языки программирования. Ибо для этого нужно как минимум вдвое, а на самом деле - и втрое больше разработчиков ,чтобы разрабатывать и то,и другое , и еще и патчи принимать.А их и так не хватает.И прекратить разработку , и взять и за 4 года все на rust переписать - смелости нет.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено ананим.orig , 02-Мрт-25 06:55 
Ложь
Макос - сертифицирован как unix, что совсем не тоже самое, что и посикс.
На данный момент наиболее поддерживающими последние посикс стандарты как раз являются некоторые линуховые дистры и то далеко не все.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 22:58 
Эта поделка существует дольше, чем ты слово POSIX знаешь.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 06:19 
Миллионы мух не могут ошибаться!

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено morphe , 28-Фев-25 23:32 
Ещё бы скрипты кто-то posix-совместимые писал, кругом же башизмы и никакой posix shell их не переварит

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Анониссимус , 01-Мрт-25 11:32 
Так и запускай скрипты башем, в чём проблема? Жалеко места в системе на бинарник баша?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 14:29 
Вендорлока гнутого не хочется.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Анониссимус , 01-Мрт-25 15:37 
> Вендорлока гнутого не хочется.

В условиях, когда код открыт, допускает копирование, изменение, компиляцию и распростренение; говорить о каком-то вендоролке -- просто моветон.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 18:02 
Гнутым нет веры после того, как они свою лицуху поправили по принципу "компильнул что-нибудь gcc - вся твоя прога гнутой станет". Потом это дело откатили, но осадочек остался. https://www.gnu.org/licenses/gcc-exception-3.1.html - память о тех делах.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Анониссимус , 01-Мрт-25 18:59 
> Гнутым нет веры после того, как они свою лицуху поправили по принципу
> "компильнул что-нибудь gcc - вся твоя прога гнутой станет". Потом это
> дело откатили, но осадочек остался. https://www.gnu.org/licenses/gcc-exception-3.1.html
> - память о тех делах.

Если хорошенько поискать, у каждого можно найти свой скелет в шкафу. Но нам ведь ехать, а не шашечки?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 19:43 
> Если хорошенько поискать, у каждого можно найти свой скелет в шкафу. Но
> нам ведь ехать, а не шашечки?

Ага, поэтому я еду на clang/llvm)))
Потому что там все предсказуемо:
- да могут закрыть
- но все предыдущие версии остаются открытые
- с учетом того сколько заинтересованных - вероятность что закроют минимальная

Но даже если не ворошить прошлое, то в GPL есть "any later version" clause.
И оно есть вот прямо сейчас.
Да оно опциональное, но как по мне это как подпись на пустом листе бумаги.



"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Анониссимус , 01-Мрт-25 23:37 
> - да могут закрыть
> - но все предыдущие версии остаются открытые

С GPL всё то же самое, кроме первого пункта :)

> Но даже если не ворошить прошлое, то в GPL есть "any later
> version" clause.

Хоть я и не юрист, но вот моё понимание. Если выйдет гипотетическая GPLv4, в которой вводится необходимость платить по 1000 баксов за каждую попытку компиляции, это ещё не означает, что вас тут же заставляют платить. Вы можете пользоваться продуктом под старой лицензией -- GPLv3.

Это утверждение про "any later version" скорее является опасностью для автора ПО. Т. к. если в гипотетической GPLv4 корпоратам дадут возможность закрывать код, то они с удовольствием этой возможностью воспользуются. У пользователя же старую лицензию никто не отбирает. Ещё раз, это всё имхо.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено User , 02-Мрт-25 06:33 
Завидую людям с бесконечным бесплатным временем...

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 14:15 
Таким, как сидящим на опеннете и изливающим душу о своей зависти к возможностям других?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено morphe , 02-Мрт-25 05:52 
> Так и запускай скрипты башем, в чём проблема? Жалеко места в системе
> на бинарник баша?

Жалоба была что POSIX совместимости не было, но кому она нужна если её не хватит для большинства скриптов? У меня у самого лишь bash да fish стоит


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 14:16 
Для чего конкретно posix shell не хватит, есть примеры?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 19:46 
> Ещё бы скрипты кто-то posix-совместимые писал, кругом же башизмы и никакой posix shell их не переварит

А зачем? Предложение весьма глупое - баш идёт отдельным софтом - если нужно, берете и пользуетесь. К командной оболочке оно не имеет отношения в общем-то. А выражать недовольство раздувая из мухи слона на пустом месте без единого существенного аргумента - просто предрассудки. И даже посмотреть на это с другой стороны - отечественная командная оболочка... ну и какой она должна быть чтобы делать не копию и какие выгоды? А если про скрипты это не так сложно на самом деле. Я как-то за один день весьма простую оболочку на Си написал с использованием кириллицы - просто обида была на американцев, накатило как-то. Но это не сложно. На gitflic можете поискать Тор (по русски, не браузер, не рекомендую, не безопасно, просто для развлечения).


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:56 
ведь это так важно куда ты будешь вводить свои `cd` и `ls`

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено anonymous , 01-Мрт-25 22:24 
Не понимаю сарказма. У тысяч людей от админов, девопсов до разработчиков самых разных мастей шелл является одним из основных и самых часто используемых инструментов работы. Если тебе это неважно (может ты просто редко этим пользуешься), то нам это действительно важно.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено laindono , 01-Мрт-25 05:50 
А posix вообще актуален? В мире победившего linux как-то не очень понятно, в чём смысл.

Разве posix это не стандарт? Стандарты вообще для чего пишут, знаешь? Чтоб проще было обеспечивать совместимость. Совместимость между linux и чем? Между linux и бздном? Между linux и яблоком? Не очень-то хотелось, не очень-то они совмещаются. Ввиду не слишком пересекающихся ниш.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 14:22 
Да хотя бы между разными осями. Единожды написанный сценарий на posix shell выполнится с одинаковым результатом и на Linux bash, и на Debian dash, и на Android mirksh, и т.д. Но до умения делать универсально ещё надо дорасти.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 13:02 
А зачем шеллу обязательно быть posix-совместимым? Для запуска скриптов всегда есть /bin/sh.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Да ну нахер , 01-Мрт-25 14:34 
Копипастить команды из мануалов в интерактивный сеанс неудобно. В мануалах будет скорее всего posix shell. Возможно это допилили в последние годы, слышал что добавили &&, || в дополнение к самобытным and, or. Меня оттолкнуло в своё время.

Кроме того, невозможность посорсить 3rd-party скрипты из системных каталогов типа /etc/profile.d/... несколько обескураживает, и *.fish я в них не встречал. Инфа по состоянию на несколько лет назад, возможно уже начали поставлять, меня опять же оттолкнуло (вижу например что в активаторы venv/virtualenv генерацию *.fish -- добавили).


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 21:08 
>Не POSIX совместимо

Единственный плюс posix, по сравнению с альтернативами - популярность.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 14:24 
В чем это популярность проявляется? В восхищении аббревиатурой в отдельно взятой голове?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Герострат , 28-Фев-25 22:35 
Не думал, что рыба может заржаветь

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Dzen Python , 28-Фев-25 23:05 
Смотря какой рыбец.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Dzen Python , 28-Фев-25 22:59 
Хм...
А аналоги по функционалу есть? zsh - не то.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Карлос Сношайтилис , 28-Фев-25 23:09 
О! А я помню, были разговоры про "поиграют с ростом и вернуться", при обсуждении fish.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Нуину , 28-Фев-25 23:09 
> решить проблемы с многопоточностью

Какие?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено НяшМяш , 28-Фев-25 23:12 
https://fishshell.com/blog/rustport/

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 09:10 
если бы они писали на С то таких проблем бы небыло.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аномалии , 01-Мрт-25 16:07 
С самого начал fish был написан на Си. Потом переписали на С++, теперь на Раст. Через пару лет начнут на что-то другое переписывать. Главное показать деятельность

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 16:21 
Следующий перепис на очереди - на Zig.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 16:36 
> Следующий перепис на очереди - на Zig.

Если людям это нравится, то почему бы и нет.
Хобби разные бывают, кто-то генту пересобирает.

Хотя я не вижу преимуществ zig.
Я бы поставил на Rust++ (раст + наследование как в плюсах), но его еще никто не придумал))


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Нуину , 01-Мрт-25 16:45 
На javascript пусть перепишут уже и успокоятся.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 14:26 
Не хвастайтесь здесь своим обширным багажом знаний, завистники заклюют.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Нуину , 03-Мрт-25 16:03 
> Не хвастайтесь здесь своим обширным багажом знаний, завистники заклюют.

Что не так? Хочешь сказать жс небезопасно работает с памятью?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено деанон , 01-Мрт-25 10:22 
Там ответ в духе: "сложнаа, нипанятна". Собственно, зачем разработчику такая глупая вещь как компьютерные науки, лол

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 18:39 
Писать многопоточный код именно что сложно и непонятно. Одна из наиболее сложных вещей в CS. Но чтобы это понять надо написать чуть больше, чем c:\laba1.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Шарп , 28-Фев-25 23:10 
Шелл красивый и хипстерский, но несовместимость с бгмерзским башем всё портит.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено morphe , 28-Фев-25 23:30 
Был бы он совместим - был бы таким же мерзким как баш.
Для существующих скриптов слой совместимости есть, чтобы их sourceить - bass, зачем что-то ещё?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено User , 01-Мрт-25 08:55 
Да если бы они ценой потери совместимости чего-то радикально лучшее сделали - так ведь нет же. То же самое перекидывание строчками из 70х, но с клубничным привкусом, ага.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 21:46 
> Да если бы они ценой потери совместимости чего-то радикально лучшее сделали - так ведь нет же.

Вот поэтому надеюсь на nushell.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено User , 03-Мрт-25 07:46 
>> Да если бы они ценой потери совместимости чего-то радикально лучшее сделали - так ведь нет же.
> Вот поэтому надеюсь на nushell.

Ну, если не заморачиваться интерактивной работой - то можно не ждать и пользоваться вот powershell. Да, даже под онтопиком :)


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 09:12 
и возможно при его установке тебе по почте сразу вазелин приходит

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 23:16 
К сожалению в новость не добавили предпосылки и причины этого действия.
fishshell.com/blog/rustport/index.html

В общем они уже один раз переписывали с С на С++.
Но получили пачки проблем в виде
- compiler/platform differences
- ergonomics and (thread) safety
- community

У них было мало С++ контрибьюторов "Over the 11 years fish used C++, only 17 people have at least 10 commits to the C++ code"
Но много С++ проблем: it is extremely easy to run into use-after-free bugs

Они делают проект по фану и им важно получать от этого удовольствие.
"For one, fish is a hobby project, and that means we want it to be fun for us. Nobody is being paid to work on fish, so we need it to be fun. Being fun and interesting also attracts contributors"

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

В итоге 7 человек, в свободное время заменили весь старый код.



"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Внеземная_ОСЬ , 28-Фев-25 23:25 
autocxx что это ? Авто связка как понятно , что вообще нового сделано кроме пере байтирования и пере дампирования чужого труда в другую директорию ?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 23:42 
> autocxx что это ?

interop между растом и с++

> что вообще нового сделано кроме пере байтирования и пере дампирования чужого труда

Чьего труда?
Это их же код.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Code_convert_avi_to_mpeg , 28-Фев-25 23:47 
Много что кто говорит

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:01 
Да, т.е. на цпп было 17 человек, которые коммитили, а на расте 7 человек, круто. Ну и переписали шелл(что не рокет сайнс) ВСЕГО за 2 года. Потрясающий результат. Все причины высосаны из пальца в желании скрыть истинную причину - автору просто захотелось. Но, видимо, яиц не хватило напрямую написать.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:10 
Учитывая что им просто по фану, причин быть и не должно.

Написали обычный хелло-ворд. Э... переписали.

Что бы показать что умеют пользоваться растом.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:14 
Ну так претензия к тупому списку причин, которые им пришлось придумать, чтобы оправдать свое решение. Могли бы просто заявить Я ХОЧУ.
Ну и фанатов Х не особо стоит слушать по поводу Х. Там и хрен лучше стоять начал, и трава 100% позеленела и деньги сами в кармане начали появляться.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 01:27 
Про деньги это да. На что модно, хайпует, в тренде, на то и переписывают, тут и грантик подрезать можно.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 12:52 
> Ну так претензия к тупому списку причин, которые им пришлось придумать, чтобы оправдать свое решение

Эээ.. чувак ты вообще читал, что они написали?
Они прямо говорят:
"нас заколебал С++, народу нет и вообще это не fun.
Поэтому прикола ради мы сделали мемный тикет rewrite to rust.
А потом понеслось ибо раст это fun"


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:19 
> Да, т.е. на цпп было 17 человек, которые коммитили,

За 11 лет.

> а на расте 7 человек, круто.

За два года.

> Ну и переписали шелл(что не рокет сайнс) ВСЕГО за 2 года.

В свободное время?

> Потрясающий результат.

Уверен ты бы справился лучше и поделишься своими достижениями.
(Ладно это была шутка, понятно что ты сольешься)

> Все причины высосаны из пальца в желании скрыть истинную причину - автору просто захотелось.

Он прямо пишет "Nobody is being paid to work on fish, so we need it to be fun."

> Но, видимо, яиц не хватило напрямую написать.

Не, скорее у тебя мозгов почитать)



"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:37 
>За 11 лет.

Видимо свободного времени было меньше. Кстати, а написание кода на Си с последующим переписыванием на цпп по чистой случайности в эти 11 лет не входит?)

>Уверен ты бы справился лучше и поделишься своими достижениями.
>>ряяя сперва добейся

В чем смысл этого тупого аргумента? По такой логике никто никого не должен обсуждать, пока не пройдет его путь.

>Он прямо пишет "Nobody is being paid to work on fish, so we need it to be fun."

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


>За два года.

Да и вообще грязая подмена изначального тезиса, но в  прочем от растобл®дей такое ожидаемо. Изначально переход аргументировался привлечением новых разработчиков к проекту, но их количество снизилось с 17 до 7, лол. Но вы решили это опустить и набросили свои фантазии про переписывание за 2 года против 11, которые никак нельзя проверить, ибо неизвестно сколько времени уделялось раньше и не входит ли в это время написание проекта на Си.
Ну и это просто смешно "ДА РАЗРАБОТЧИКОВ СТАЛО МЕНЬШЕ, НО НАМ ЭТО УЖЕ И НЕ НУЖНО, ПОСМОТРИТЕ КАК МЫ БЫСТРО ПИШЕМ".
Жалкое зрелище. Из-за таких как вы у раста и плохая репутация, никто не любит гнилых и изворотливых червей, которые специально откровенно набрасывают.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено JackONeill , 01-Мрт-25 03:40 
Стул не сожги)

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 18:44 
> По такой логике никто никого не должен обсуждать, пока не пройдет его путь

Почти так, только не «его путь», а «свой путь». Но тут 99.99999999% никакие пути не ходят, и пишут не вставая с дивана. На что тебе и указали. Talk is cheap, show me the code.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено User , 01-Мрт-25 08:46 
Развитый навык ээээ... дупочтения, поздравляю.
Если что - в тексте новости указано, что "В создании выпуска 4.0 приняли участие более 200 разработчиков." - но кто ж ту новость читал-то, когда надо было успеть комментарий выложить...

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 12:54 
Ага, я заметил что у тебя он развит на 100%
Вот прямая цитата
Most of the work was done by 7 people (going by those with at least 10 commits to “.rs” files), but we got a lot of help from interested community members. [1]

Приняли участие это понятие растяжимое.
Может они меняли color на colour.
А может тестировали.
Или закоммитили 1 строку.


[1] fishshell.com/blog/rustport/ - The Timeline



"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено User , 01-Мрт-25 13:28 
> Ага, я заметил что у тебя он развит на 100%
> Вот прямая цитата
> Most of the work was done by 7 people (going by those
> with at least 10 commits to “.rs” files), but we got
> a lot of help from interested community members. [1]
> Приняли участие это понятие растяжимое.
> Может они меняли color на colour.
> А может тестировали.
> Или закоммитили 1 строку.
> [1] fishshell.com/blog/rustport/ - The Timeline

Да-да, давай еще про "ненастоящих шотландцев" с ненастоящим участием...


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 14:21 
> Да-да, давай еще про "ненастоящих шотландцев" с ненастоящим участием...

Ты не понимаешь разницы между
"Most of the work was done" и "приняли участие" ?

Не уверен что есть смысл с тобой спорить.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 23:24 
> Состоялся релиз интерактивной командной оболочки

зачем это в 21 веке - где кнопки мышью тыкать? ещё два года переписывали 200 человек, пипец похоже на расте то быстро пишется бгг


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 01:34 
Ну, спроси любого - консоль по прежнему самый удобный и продуктивный способ взаимодействия с железом. А почему - потому что это то же общение, прямо как в чате с реальными людьми. Для людей, ничего естественнее, чем диалог, просто быть не может, вот и все.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 10:51 
> консоль по прежнему самый удобный и продуктивный способ взаимодействия с железом

мне busybox ash достаточно, лучше бы потратили время на его переписывание и развитие - офигенная тема, заменяет базовую систему одним маленьким бинарником, особенно актуально для раста. Разработать ещё для него новую систму инициализации и systemd на помойку отправить.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 15:29 
Для людей. Но техника — не человек. Посмотрите на панель управления любым устройством — от музыкального центра до ядерного реактора. Вы видите там консоль? Нет. Вы видите там кучу кнопочек, тумблеров и разнообразных индикаторов.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 23:13 
Я не знаю, где вы видели ядерный реактор, но у музыкального центра функций почти нет. Громче/тише, старт/пауза - вот и почти все кнопки. Возьмём для примера тот же докер: там одних настроек сети будет куча. Попробуйте всё это засунуть в гуи, не потеряв при этом функциональности, и чтобы в этих кнопках нельзя было бы заблудится.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 22:29 
Консоль - это инструмент для автоматизации, для повторяемости, для сохранения последовательности действий.

У неё есть большая проблема. Консоль не может показать все доступные действия. Их надо откуда-нибудь выковыривать. А GUI - может. Может показать совместимые команды. Может валидировать ввод. Может показать дефолтные настройки (в CLI их легко забыть задокументировать).

Посмотри на MKVToolNix -> Multiplexer -> Show command line.

Можно накликать в GUI план действий и получить консольную команду (копируешь её и потом переиспользуешь в шелловых скриптах), если надо. Если не надо - команда запустится под капотом через GUI. Это идеал.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 23:09 
>Консоль не может показать все доступные действия

Возьмите любой современный консольный софт, тот же docker. Они очень сильно продвинулись в этом плане
>А GUI - может

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

Только в самых простых случаях
>Может показать дефолтные настройки (в CLI их легко забыть задокументировать).

Кто помешает забыть задокументировать их в гуи?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 00:12 
> Возьмите любой современный консольный софт, тот же docker. Они очень сильно продвинулись в этом плане

Взял. Вижу неплохой графический интерфейс к консольному интерфейсу. Графический интерфейс называется "docs.docker.com/reference/cli/docker/".

> Как только гуи начинает содержать кучу настроек, в них мгновенно становится сложно ориентироваться.

А как только CLI начинает то же самое, то что становится?

Например, вот это: https://git-man-page-generator.lokaltog.net

Или вот это:
Running you suggested answer:
ffmpeg -v info -hide_banner -f lavfi -i smptehdbars=rate=25:size=1920x1080 -filter_complex "[0:v]drawtext=text=text1:x=100/2:y=100:fontsize=50[txt1];[txt1]drawtext=text=text2:x=200/2:y=200:fontsize=50[txt2];[txt2]drawtext=text=text3:x=300/2:y=300:fontsize=50,split=2[txt3][out3];[txt3]drawtext=text=text4:x=400/2:y=400:fontsize=50[txt4]" -map "[out3]" -t 10 -y ~/Desktop/mapstuff1.mp4
I get "Filter drawtext:default has an unconnected output"[1]

Если фильтры превратить в node-based UI, то получится уже графический интерфейс.
Если превратить в domain-specific language, то интерфейс будет уже не консольный.
Такие портянки можно оправдать только дешевизной автоматизации - новый DSL не надо изобретать, синхронизировать GUI и CLI как в MKVToolNix не надо.

>>Может показать дефолтные настройки (в CLI их легко забыть задокументировать).
> Кто помешает забыть задокументировать их в гуи?

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

Программисты вот превозносят самодокументируемый код. А самодокументируемые интерфейсы - это не покушение ли на святость консоли?


[1] https://stackoverflow.com/questions/74807979/ffmpeg-filter-c...


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 04:46 
> зачем это в 21 веке - где кнопки мышью тыкать.

Подсмотрел у друга программиста он тыкает кнопочки copy - paste, на ios, mac.
Зачем консоли.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено ИмяХ , 02-Мрт-25 09:29 
Этот комментарий ты тоже мышью написал, надеюсь.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Ан Оним , 28-Фев-25 23:33 
Вот что разработчики пишут в https://github.com/fish-shell/fish-shell/pull/9512#issuecomm...

C++'s string handling is subpar, and it's much too easy to fall into passing raw wchar_t * around (and we don't have access to string_view and that just enables even more use-after-free bugs!). This is annoying, because a shell is almost entirely string handling and unix api wizardry.

Fish also uses threads, for things like the autosuggestion and syntax highlighting ...
C++ offers few guarantees on what can be accessed from which thread. @ridiculousfish has been trying to crack this for years, and hasn't been confident enough in his solution. We want a tech stack that helps us here, and C++ doesn't.
-----
Вобщем, вывод такой: разработчики фиша просто плохо знают С++, чтобы программа на С++ была надёжной, разработчик должен быть ответственным и дисциплинированным, а они хотят по fun'у всё делать, чтоб язык за них всё сделал. А С++ will never thank you.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Ан Оним , 28-Фев-25 23:45 
Если вместо std::string использовать С-массив из wchar_t, то конечно будет ненадёжно

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 23:46 
Ага, какие плохие разработчики Рыба.
Но странное дело андроид тоже избавляется от С++, новый код стараются не писать.
И в хроме какая-то движуха.
А в ядро С++ даже не взяли, в отличии от))

> чтоб язык за них всё сделал

Действительно, какая наглость!
Надо чтобы программист все ручками писал и каждый битик считал.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Ан Оним , 01-Мрт-25 00:17 
>Надо чтобы программист все ручками писал и каждый битик считал.

Кто-то должен и это уметь делать. Как-то дали мне задание чтоб на микроконтроллере определённую работу сделать не более чем за 17 микросекунд, так пришлось все команды программы перевести в циклы процессора чтобы время подсчитать


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:22 
>>Надо чтобы программист все ручками писал и каждый битик считал.
> Кто-то должен и это уметь делать.

Кому надо, пусть учится.

> Как-то дали мне задание чтоб на микроконтроллере определённую работу сделать не более чем за 17 микросекунд, так пришлось все команды программы перевести в циклы процессора чтобы время подсчитать

Как это соотносится с командной оболочкой?



"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 01:38 
Так с такими трендами, что творяться сейчас в индустрии, попросто не останется тех, кто будет учиться таким вещам. И учебников тоже не станет, потому что все отменят.
Нейронки, пишущие код, язык, не дающий работать с памятью и процессором напрямую, такие вещи до добра не доведут.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Прохожий , 01-Мрт-25 04:23 
>попросто не останется тех, кто будет учиться таким вещам

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

>язык, не дающий работать с памятью и процессором напрямую

Вы Rust с Python перепутали, похоже. В Rust никто не запрещает работать с памятью. А вот с процессором напрямую работать можно только с помощью Ассемблера.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 09:27 
>  Так с такими трендами, что творяться сейчас в индустрии, попросто не останется тех, кто будет учиться таким вещам.

Что значит не останется?
Вот тебя же жизнь (задача с микроконтроллером) заставила?

> И учебников тоже не станет, потому что все отменят.

Какие учебники отменят? Что ты несешь?

> язык, не дающий работать с памятью и процессором напрямую

Ты сейчас про раст? Он позволяет писать bare metal и для микроконтроллеров, если нужно.
Так что мимо.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 21:17 
> Так с такими трендами, что творяться сейчас в индустрии, попросто не останется тех, кто будет учиться таким вещам

И что, всем теперь обязательно учиться "таким вещам"? Только чтобы "у вас не убыло" человекоресурсной базы? Мне за 27 лет не пригодилось ни разу, прям чтоб "ручками битики считать". Ну разве что отдаленно и однократно - когда "вручную на коленке", на ассемблере дешифратор диска написал для DOS (диск был зашифрован вирусом OneHalf и DOS'овский ДокторВеб в тот раз почему-то вылечить и расшифровать его не смог).


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено andy , 03-Мрт-25 16:33 
> на ассемблере дешифратор диска написал для DOS (диск был зашифрован вирусом OneHalf и DOS'овский ДокторВеб в тот раз почему-то вылечить и расшифровать его не смог).

Была у Dr.Web'а одна версия, где он OneHalf удалял, а диск расшифровывать забывал. Интересно, пользователи Вирусную Лабораторию Данилова задолбали обращениями, или все сошло на нет?
BTW: Your PC is now stoned!


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 23:15 
>Как-то дали мне задание чтоб на микроконтроллере определённую работу сделать не более чем за 17 микросекунд

Микрокотноллеры - отдельный мир, который к счастью с остальным it практически не пересекается.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 28-Фев-25 23:47 
> Вобщем, вывод такой: разработчики фиша просто плохо знают С++

да лучше раст изучать чем тратить молодость на плюсы


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:04 
> да лучше раст изучать чем тратить молодость на плюсы

лучше тратить молодость на раст, чем тратить молодость на плюсы

Поправил.

Правда в таком варианте звучит сомнительно.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Ан Оним , 01-Мрт-25 00:56 
Молодость знаете на что надо тратить? На работе случай был: лето, жара, окна и двери в коридор открыты, работать особо неохота, вдруг слышим в коридоре незнакомые женские каблучки, идут по коридору и приближаются к нашему коридору. Все уставились в открытую дверь в ожидании кто же это. И прошла мимо красивая высокая блондинка в коротком летнем платье. Все застыли в оцепении. Начальник показывает пальцем вслед блондинке и говорит "Вот, ребята, чем надо заниматься, а не той ф**нёй, которой мы сейчас здесь занимаемся".

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Прохожий , 01-Мрт-25 04:27 
Земля итак идиотами переполнена. А вам всё мало?

Кроме того, сама постановка проблемы звучит сомнительно. Кому надо? И почему надо на это, а не на улучшение качества программ?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено asargis , 01-Мрт-25 09:54 
Хорошо, что есть рабы, подобные тебе. Пока ты РАБотаешь, пацаны делают бабки. В стойло, паграмист!

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 04:43 
> женские каблучки, идут по коридору
> Начальник показывает пальцем вслед блондинке и говорит "Вот, ребята, чем надо заниматься, а не той ф**нёй, которой мы сейчас здесь занимаемся".

Ходить на каблуках.
А почему начальник как надо не показал на своем примере.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено laindono , 01-Мрт-25 05:55 
Может и показал

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено анонимус , 01-Мрт-25 00:08 
ага, и тратить оставшуюся жизнь, на переписывание проекта под каждую новую версию хрустяшки, после впердоливания очередной порции стабилизяшек.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 23:12 
Вы выбираете из двух зол. Зачем?? Есть язык Ди - куда приятнее и перспективнее всякой ржЫ.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено n00by , 01-Мрт-25 08:02 
> Вобщем, вывод такой: разработчики фиша просто плохо знают С++, чтобы программа на
> С++ была надёжной, разработчик должен быть ответственным и дисциплинированным, а они
> хотят по fun'у всё делать, чтоб язык за них всё сделал.
> А С++ will never thank you.

То есть приблизительно "одни и те же люди" попробовали и у Rust порог вхождения оказался (в первом приближении; понятно, что опыт с Rust не окончен) ниже?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено деанон , 01-Мрт-25 10:34 
Если что, то они и с Си не справились, потому что многопоточность у Си и Плюсов одна и та же. Может дело не в языке?!)

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено n00by , 01-Мрт-25 17:46 
> Если что, то они и с Си не справились, потому что многопоточность
> у Си и Плюсов одна и та же. Может дело не
> в языке?!)

Ну... да, я ж и написал "порог вхождения ниже". :)


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 21:28 
> Вобщем, вывод такой: разработчики фиша просто плохо знают С++, чтобы программа на С++ была надёжной, разработчик должен быть ответственным и дисциплинированным, а они хотят по fun'у всё делать, чтоб язык за них всё сделал. А С++ will never thank you.

ЯП должен позволять писать надёжный софт даже неопытному разработчику. C++ не полволяет даже опытному.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено n00by , 04-Мрт-25 10:27 
>> Вобщем, вывод такой: разработчики фиша просто плохо знают С++, чтобы программа на С++ была надёжной, разработчик должен быть ответственным и дисциплинированным, а они хотят по fun'у всё делать, чтоб язык за них всё сделал. А С++ will never thank you.
> ЯП должен позволять писать надёжный софт даже неопытному разработчику. C++ не полволяет
> даже опытному.

Язык никому ничего не должен: он недоговороспособен, потому долговым обязательствам на нём появиться неоткуда.

А вот зачем в айтишечке непонимающие что пишут персонажи - это любопытный вопрос.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:14 
> Fish 4.0.0 only says "Segmentation Fault (core dump)" https://github.com/fish-shell/fish-shell/issues/11187

Ах-ах-ах, безопасный раст не спас от ошибок сегментации.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:22 
По ссылке шедевр. Бедолага даже ссаный шелл сбилдить не смог по причине РАСТ. Я емакс на 2х ядрах и 1.5гб озу собирал. Какой позор...

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Алконим , 01-Мрт-25 01:42 
Hello world собирается нормально без проблем. Не знаю какие проблемы там у автора. (На большее раст не способен)

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Прохожий , 01-Мрт-25 04:35 
Раст, конечно, способен, если те, кто его использует, имеет голову на плечах и руки, растущие из плеч. Остальным же можно просто посочувствовать.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Алконим , 01-Мрт-25 08:39 
Нет, раст это о шутках в стиле Чак Норрис: Если бы <name> было написано на Раст то это было бы безопасно

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 16:26 
>если те, кто его использует, имеет голову на плечах и руки, растущие из плеч

Так это же самое верно и в отношении C. Зачем тогда Rust?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 22:01 
>Я емакс на 2х ядрах и 1.5гб озу собирал

Сколько лет назад? При столь малом объёме памяти, двух ядер становится много, поскольку если два процесса компиляции в память не влезут, то собирать всё равно придётся на одном.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:24 
Так у него старый проц, бинарь просто собран с оптимистичными флагами

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 01:52 
Ну допустим это так. Но сбилдить то под себя почему не получается? Чтоб сбилдить шелл (шелл, Карл!) из исходников уже C2D и 2Гб RAM недостаточно?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Да ну нахер , 01-Мрт-25 13:55 
Мда, ну и шеллы пошли. А ведь когда-то шелл портировался первым при переходе (после ядра) на новую платформу из-за своей легкости. Такой минимальный UI к ядерным интерфейсам.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 21:59 
>Чтоб сбилдить шелл (шелл, Карл!) из исходников уже C2D и 2Гб RAM недостаточно?

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

Во времна, когда данное железо было актуальным, в ходу были x86 программы, а сейчас x64. Сама по себе программа под x64 только на указателях будет тратить до двух раз больше памяти, чем x86, при прочих равных. Далее, из этих 2 Гб часть уйдёт на систему, и компилятор в своё распоряжение получит менее 2 Гб. Даже современный gcc будет тратить больше памяти чем пятнадцатилетней давности, не говоря уже про библиотеки и всё прочее.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено morphe , 02-Мрт-25 05:59 
> Ну допустим это так. Но сбилдить то под себя почему не получается?
> Чтоб сбилдить шелл (шелл, Карл!) из исходников уже C2D и 2Гб
> RAM недостаточно?

Там LTO включён, т.е вся компиляция идёт все исходники (llvm биткод) на вход, бинарь на выход, и оптимизация идёт всего сразу, с инлайнингом вообще всего во всё например.
Это требует очень много памяти в сравнении с типичным .c => .o (без llvm биткода, с нативным кодом) => линковка, но оптимизации того стоят, зачем компилировать на машине с 2гб рамы?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 00:57 
Это определенно наш кумир

> CPU: Intel Core 2 Duo T6670 (2) @ 2.201GHz


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 01:28 
Core 2 Duo 2Ghz уже недостаточно для шелла?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Прохожий , 01-Мрт-25 04:30 
Для готовой оболочки - достаточно. Но речь же о компиляции. Для компиляции - нет, недостаточно, очевидно. И?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 15:18 
Готовый шелл у него не работает, скомпилировать тож не получается. Нет, речь не про компиляции гугл хром из исходников идёт, а про командную оболочку.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 16:30 
Но Bash на таком железе скомпилялся бы на ура.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 18:51 
И чего ж он башем не пользуется? Старому компьютеру — старый софт. Всё справедливо. А то знаешь, баш этот ваш на PDP7 не собирается. Стало быть выбрасывать?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 21:18 
Если внимательно почтитать переписку, то внезапно, ему не хвтатет памяти.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 01:32 
Там еще интереснее:

> Okay I wasn't able to compile Fish right on that laptop since apparently 3 GB RAM isn't enough? It's just running out of memory.
> Yeah, compiling rust programs is fairly memory intensive.

Я на таком же компе целый Firefox собирал из pkgsrc, а тут какой-то шелл. Блин, что с этим растом не так?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено 12yoexpert , 01-Мрт-25 01:41 
а что с ним так?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 01:44 
Растолюбы говорят там какие-то боровы есть

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено 12yoexpert , 01-Мрт-25 05:26 
скорее медведи

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 12:45 
> Я на таком же компе целый Firefox собирал

Сколько лет назад ты это смог сделать?)

> Блин, что с этим растом не так?

С растом все так. Проблема в хламе.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 15:32 
До сих пор могу. Или этот шелл в сабже толще фаерфокса?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 14:35 
Если можете до сих пор, то проблема не в расте, поскольку в фаерфоксе тоже есть раст

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 15:16 
Я бы поставил вопрос иначе: что не так с человеком, который в 2025 сидит на таком говне мамонта и ещё пытается в разработку?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 15:30 
С этим человеком все нормально - он захотел попробовать шелл, который у него не заработал. Ему ответили, что раст туда понапихал всяких инструкций, которых у него нет и надо просто пересобрать бинарь под свой проц. Но и тут облом - шелл невозможно скомпилировать на коре 2 дуба с 3 гигами оперативы. Очевидно тут дело не в проце и количестве памяти вк, потому что на таком проце можно make world на FreeBSD сделать и целое ядро линукс собрать. Это проблема в кривом языке. Это как современные кодер на электроне советуют докупить памяти, она ведь дешёвая (хз только куда её вставлять, если слотов больше нет, или она припаяна). То есть проблему кривого дизайна, неоптималтныз и жрущих алгоритмов предлагается затыкать заменой железа. А речь то идёт про какой-то сраный шелл.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 15:41 
> он захотел попробовать шелл, который у него не заработал. Ему ответили, что раст туда понапихал всяких инструкций, которых у него нет и надо просто пересобрать бинарь под свой проц

О, сколько его открытий чудных ждёт, что на этом мусоре ещё не заработает.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 22:26 
>Но и тут облом - шелл невозможно скомпилировать на коре 2 дуба с 3 гигами оперативы. Очевидно тут дело не в проце и количестве памяти вк, потому что на таком проце можно make world на FreeBSD сделать и целое ядро линукс собрать

Мне очень интересно посмотреть, как вы текущую версию ядра на таком железе будете собирать, хватит ли вам памяти на make -j3 или нет. И можно ли будет на таком устройсте хоть чем-то параллельно заниматься.
>То есть проблему кривого дизайна, неоптималтныз и жрущих алгоритмов

Доказательства неоптимизированности будут? Вы совершенно напрасно считаете, что ранее алгоритмы были какими-то особо оптимизированными. Основная задача софта раньше - пролезть хоть как-то на то железо, что было доступно. Что при этом отвалится или не будет работать - не важно, главное, чтобы оно хотя бы иногда запускалось. Если сравнивать си с растом, то в си нет боров чекера, соответственно на него память тратить не нужно. Макропроцессор в си это что-то вроде sed-а, он берёт строку и заменят одну подстроку на другую, в то время как в rust макропроцессор работает с синтаксическим деревом. Да даже взять тот же strcpy, тут даже в названии функции аж целый байт сэкономили, которая не проверяет размер буфера, это экономия аж на два size_t. И так буквально во всём. За счёт таких хаков оно и пролазит на то железо, где расту места не хватает. Только вот и проблем за счёт этого огромная куча.
>С этим человеком все нормально - он захотел попробовать шелл, который у него не заработал

Для таких целей придумана кроскомпиляция. Поскольку столь древнего железа мало, а в ходу оно будет ещё долго. Нет никакого смысла отбрасывать себя лет на пятнадцать, а то и двадцать, ради полутора землекопов.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 00:42 
> Основная задача софта раньше - пролезть хоть как-то на то железо, что было доступно. Что при этом отвалится или не будет работать - не важно, главное, чтобы оно хотя бы иногда запускалось

Ага, конечно. Верим.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 14:34 
Давайте, оспорьте.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 14:40 
Для скептиков: если строкам добавить размер, то потребуется всего 128 нетерминалов, чтобы занять 1 Кб. В коде
void main() {
    printf("Hello world\n");
}
Нетерминалов 4: "void", "main", "printf", "Hello world\n". Это без учётов того, что будет включено всякими includ-ами. Так что думайте

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 18:13 
Не совсем понятно о чем Вы?

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 23:18 
Перед тем, как утверждать, что современный софт жрёт память, потрудитесь узнать, на что эта память расходуется. А я говорю о том, как легко может увеличится потребление памяти лексером, при незначительном изменении кода.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 07:57 
До C были FORTRAN и ALGOL 60, где спокойно тратились на длинные и очень длинные ключевые слова (вплоть до equivalence и double precision). Затем эту многословность уже в сишные времены перенял Pascal. Затем пошли персональные компьютеры, которым весьма надо быть дешёвыми и это не мешало им иметь интерпретатор BASIC'а (написанный на ассемблере и влезающий в ~5 килобайт).

А сишники в основном просто выё-кхе-кхе. Известная шутка:
memmove - более безопасная функция
memcpy - на 1 символ короче и на 1 условный переход меньше!
Что выберет настоящий сишник?

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

В голову лезут глупые шутки вроде "деда, а ты на самом деле динозавров видел?"


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 12:49 
>До C были FORTRAN и ALGOL 60, где спокойно тратились на длинные и очень длинные ключевые слова

Я же написал: "нетерминалы". Ключевые слова здесь не влияют, так как уже на этапе лексера они превращаются в токен с фиксированным размером. И здесь подсчт просто 1024/8=128. Это только размер size_t для строки, без самой строки
>написанный на ассемблере и влезающий в ~5 килобайт

Теперь осталось подсчитать, что это бейсик мог. Я более чем уверен, что почти ничего.
>memcpy - на 1 символ короче и на 1 условный переход меньше!
>Что выберет настоящий сишник?

Верно подмечено


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 17:33 
> Я же написал: "нетерминалы". Ключевые слова здесь не влияют

Угу, а ещё написал "void". "Если на клетке слона прочтёшь надпись «буйвол», не верь глазам своим".

> И здесь подсчт просто 1024/8=128. Это только размер size_t для строки

Борода отклеилась. Во времена 1-64КБ оперативки size_t - это 2 байта. Жалко один из этих двух байтов, хочется догнать нуль-терминированные строки? Так использовать при написании компилятора 1 байт на длину строки как в ShortString. Жалко терять длинные строковые литералы? С ними можно много чего придумать*, главное, что чепуха про неизбежность нуль-терминированных строк опровергнута.

> Верно подмечено

Только гордиться нечем. Просто во времена B отцов-основателей штырило посильнее, поэтому там был "extrn". Во времена C послабее, но всё же штырило, поэтому "memcpy". Безопасность? Ну, в те времена к ней было другое отношение. А было бы не другое - глядишь, и Rust бы в ядро не стали упихивать.

* Начать хоть с того, что в C89 гарантировалась поддержка только литералов длиной до 509 байт. 256 - это как 509, только 256.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 19:01 
>Угу, а ещё написал "void"

С точки зрения синтаксиса там может быть абсолютно любая строка, так что утверждать, что там будет терминал - скорее всего преждевременно.
>Борода отклеилась. Во времена 1-64КБ оперативки size_t - это 2 байта

Это тогда. А сейчас на C2D скорее всего будет запущен вполне себе x64.
>Так использовать при написании компилятора 1 байт на длину строки как в ShortString

Это будет свосем уж бессмысленно, так как удобства практически не добавляет, а вот проблем от этого уже много
>* Начать хоть с того, что в C89 гарантировалась поддержка только литералов длиной до 509 байт. 256 - это как 509, только 256.

Сурово...


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 04-Мрт-25 01:10 
Но там уже void. Так можно договориться до того, что преждевременно это называть C. Может, это на самом деле Powershell: https://godbolt.org/z/9o4a53ah4

> Это тогда. А сейчас на C2D скорее всего будет запущен вполне себе x64.

Так теперь при компиляции надо волноваться не об оверхеде size_t, а об оптимизациях, проверках в компиляторе, об оверхеде метапрограмм (на макросах ли, на шаблонах ли).

При этом могут быть сюрпризы: "You can't de-optimize the kernel ... kernel as a whole requires -O2 because the code itself is written with assumptions that certain functions will be optimized in a certain way." - https://stackoverflow.com/a/33595979

> Это будет свосем уж бессмысленно, так как удобства практически не добавляет, а вот проблем от этого уже много

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

> Сурово...

Ну, изобретаем мы C. В начале 70-х, как положено. Но с 255 вместо 509. И что принципиально изменится в той альтернативной вселенной?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено fynjy , 12-Мрт-25 17:04 
по прежнему работаю на одноядерном х64 ноутбуке в качестве тестовой площадки под небольшие эксперименты, полет в целом вполе нормальный.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено laindono , 01-Мрт-25 06:05 
Ну...

> Okay, that CPU is from 2009.

Почему кто-то ожидает, что всё будет работать из коробки на устаревшем неподдерживаемом оборудовании? При том, что проблема скорее всего фиксится перекомпиляцией, о чём там и сказанно.

Откуда вообще может взяться эта несовместимость? Новые процы содержат кучу полезных инструкций, благодаря которым можно оптимизировать некоторые части кода. Например какое-нибудь сравнение строк через SIMD. 99% пользователей получают улучшение (в данном случае производительности), 1% получают проблемы (фиксятся, но в ручную). Вполне справедливый обмен, как по мне.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 02:34 
Блин... Вы ваще не читаете на что отвечаете? То что там куча новых полезных инструкций в проце это даже растоманам понятно.

> 1% получают проблемы (фиксятся, но в ручную)

Ну вот он попытался вручую пофиксить - оперативы не хватило, чтоб собрать hellowor^W шелл.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено laindono , 02-Мрт-25 02:46 
Для систем, которые по современным меркам можно уже считать микроконтроллерами, есть кросскомпиляция.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 14:43 
>оперативы не хватило, чтоб собрать hellowor^W шелл.

Не отождествляйте два этих понятия. Той же подсветки синтаксиса в helloworld нет и не будет


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 02:00 
Нормально они так зарелизили - сотни регресионгых багов, уже 4.1 версия на подходе

https://github.com/fish-shell/fish-shell/labels/regression


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 02:29 
Ну так. С нуля переписать на другой язык. На 100 тысяч строк 100 багов - думаю это вполне себе окей..

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 02:41 
> Нормально они так зарелизили - сотни регресионгых багов, уже 4.1 версия на подходе

А я повёлся) Вот и доверяй в следующий раз Анониму.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 05:23 
Изначально написали на Си, потом переписали на Си с плюсами, теперь переписали на Ржавом. Жду завершение нового переписывания кодовой базы на язык УНАСМНОГОСВОБОДНОГОВРЕМЕНИНАЧНЁМПЕРЕПИСЫВАТЬРАДИПЕРЕПИСКИ.  

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено 12yoexpert , 01-Мрт-25 05:27 
медленно движутся к электрону, познают себя

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Алконим , 01-Мрт-25 08:45 
Неё электрон уже не модно, скоро будет новый язык который вот точно будет безопаснее всех и по последним меркам со встроенным ИИ

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено 12yoexpert , 01-Мрт-25 09:30 
"ИИ" уже не модно, сегодня модно мемкойн

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 08:40 
ЭТО НАЗЫВАЕТСЯ ПРОГРЕСС!

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено 12yoexpert , 01-Мрт-25 09:31 
неа

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 12:06 
так ничего не поменялось, значит прогресса нед

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 12:49 
> так ничего не поменялось, значит прогресса нед

Почему не поменялось?
Пересталось падать в многопотоке. Одно это достаточная причина для переписывания.


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 01-Мрт-25 22:47 
В отличии от bash они почти смогли избавится от проблемы с переменными включающими в себя пробел. https://fishshell.com/docs/current/language.html#quoting-var... К сожалению для полного решения проблемы нужен принципиально другая оболочка

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Я , 02-Мрт-25 08:58 
переписали бы на питон, там и многопоточность не нужна, можно легковесных докеров накидать, и изоляция сама получится

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Facemaker , 02-Мрт-25 11:57 
>переписали бы на питон

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


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 18:06 
Эту штуковину прикручиваем к этой штуковине... )

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 12:11 
Не вижу комментария о том, а зачем, собственно, шеллу многопоток. Создаю. Думайте.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 14:47 
Нужно как в девяностые, кода у дидов пока дискета не доформатируется, система зависала. Точнее, пока автодополнение с диска или сети всё не прочитает, отредактировать уже введённый текст было нельзя. Думайте

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 22:52 
Для логов, к примеру! Выполнил задачу - отдельно в треде кинул лог "всё сделано", а в это время уже выполняется другая функция.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 17:57 
>упрощённый язык написания сценариев,

или язык написания упрощенных сценариев?


"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 02-Мрт-25 18:00 
"you can set your colors and view functions, variables, and history all from a web page."
Чтобы всё прозрачно утекало в Интернет.

"Опубликована командная оболочка fish 4.0, переписанная на яз..."
Отправлено Аноним , 03-Мрт-25 10:46 
из-за того что ето не поддерживает баш скрипы, перешёл на ble.sh