LINUX.ORG.RU
ФорумTalks

ОН - язык будущего

 , , ,


0

3

Каким должен быть супер-мега-убийца C/C++/Java/etc (эдакий ЯП общего назначения)? Что он должен уметь, какой должна быть стандартная библиотека, что с синтаксисом? А то как ни случись новый язык - так говном поливают и по итогу тонет. Что всё-таки нужно для полного счастья?

Ответ на: комментарий от john_snake

код не выглядит лаконично и логично

Гм. Сравни OOM Killer в Linux и в FreeBSD. Особенно в Linux 2.4 и FreeBSD тех же времён. В Линуксе лаконичен и и логичен, но не работает. Во FreeBSD вообще нечитаемая дичь, разная для разных архитектур, но работает.

Shadow ★★★★★
()

сам по себе язык ничего не решает. решает знание предметной области.

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

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

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

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

olelookoe ★★★
()
Ответ на: комментарий от john_snake

ибо в настоящем мы пишем на языке 30-летней давности.

А в повседневности пользуемся физикой 200-летней давности.

thunar ★★★★★
()

Чтобы без статического анализа не компилился

TooPar
()

Сразу вспоминается анекдот про спирт.

pon4ik ★★★★★
()
Ответ на: комментарий от john_snake

А говорим и мыслим вообще на языке тысячелетней давности(или сколько там? я не лингвист)… Но, тот же это язык, что и тысячу лет назад?

pon4ik ★★★★★
()
Ответ на: комментарий от ixrws

Вот точно также СC++ всех устраивает

Починил.

X512 ★★★★★
()
Ответ на: комментарий от l4gfcm

Однако, в системном программировании Си таки рулез, и с этим тоже поспорят ребята пишущие ОС на расте, говоря о «безопасности».

Нет. Голый Си нигде не нужен кроме древних процессоров без компилятора C++. C++ активно применяется в системном программировании, есть ОС с ядром на C++: BeOS/Haiku, Cerenity. В драйверах Windows используется C++.

X512 ★★★★★
()

да давно уже известно, что там должна быть одна функция, принимающая ТЗ на естественном языке

сделать("отправь сообщение пользователю с номером 337788 и текстом 'я запилил новый язык программирования'")
bvn13 ★★★★★
()
Ответ на: комментарий от john_snake

Да вот, вчера, когда лазерную указку включал

tiinn ★★★★★
()
Ответ на: комментарий от bvn13

Номер 337788 принадлежит пользователю-адресату сообщения, или отправляемому сообщению?

Зачем здесь нужна конструкция «сделать(whatever)», если уже есть «отправить whatever»?

Никакой у вас во-первых не естественный язык получился - вы никогда не говорите (сделай отправь). Во-вторых даже сформулировать какие свойства чему именно принадлежат вы выразить не смогли.

mimico
()
Ответ на: комментарий от l4gfcm

, для него есть те же плюсы

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

tiinn ★★★★★
()
Ответ на: комментарий от mimico

а вот и конпелятор нового языка пожаловал :)

bvn13 ★★★★★
()

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

WitcherGeralt ★★
()
Ответ на: комментарий от john_snake

Взаимоисключающие библиотеки - погугли, сколько есть либ для работы с сетью, удивишься.

Разнообразие и свобода выбора это хорошо

Harald ★★★★★
()
Ответ на: комментарий от WitcherGeralt

Не зашёл бы, потому что не выполняет (и никогда не выполнял) принцип worse is better. Это единственное требование для чего-либо успешного. Все остальное навсегда останется уделом маргиналов.

mimico
()
Ответ на: комментарий от mimico

В какой-то мере выполняет, у них в стандартной библиотеке ничерта нет.

WitcherGeralt ★★
()
Ответ на: комментарий от hateyoufeel

И почему нельзя из жабы дёргать биты в i2c или срать железке прямо в память по pcie?

потому что внезапно жабомашина захочет сборкой мусора заняться и похерит все тайминги

Тащемта, можно хоть прямо щаз сделать для жабы биндинги к libpciaccess и хоть дрова видеокарты на жабе писать.

а libpciaccess тоже на жабе написана?

Harald ★★★★★
()
Ответ на: комментарий от mimico

А вообще, сформулируй предъяву боле чётко. Ибо я вижу места, где он соответствует принципу, а где не соответствует хз, ведь у него даже собственного компилятора нет. Тебя cargo смущает или что?

WitcherGeralt ★★
()
Последнее исправление: WitcherGeralt (всего исправлений: 1)
Ответ на: комментарий от Harald

давайте аналог Room EQ Wisard на сишечке или пройдите лесом

Igron ★★★★★
()
Ответ на: комментарий от john_snake

В Gnome на C пилится только основа, что логично, и почти у всех крупных проектов основа либо на С либо на С++. Сама же среда давно пилится на gjs.

ixrws ★★★
()
Ответ на: комментарий от hateyoufeel

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

ixrws ★★★
()
Ответ на: комментарий от Shadow

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

ixrws ★★★
()
Ответ на: комментарий от Shadow

Однако используется в половине мира. Насчёт монтажа не надо, как монтажник со стажем могу сказать что разница ничтожно мала в сравнении с 220. Тем более что старая проводка для 110-120 вольт вообще идёт одиночными проводами, которые прокладывать в деревянных каркасниках одно удовольствие.

ixrws ★★★
()
Ответ на: комментарий от ixrws

Кроме всех устраивает, есть еще и всеобщестандартизировано.

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

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

Хотя с просто программистской точки зрения к Си и по наследству к C++ уже давно были претензии

praseodim ★★★★★
()

А зачем жабу то убивать? Что вам там не хватает? Там даже лисп есть, ёпта.

bread
()
Ответ на: комментарий от Harald

потому что внезапно жабомашина захочет сборкой мусора заняться и похерит все тайминги

А? Что? Real time Java? Не, не слышали.

а libpciaccess тоже на жабе написана?

Ну ок, раз ты хочешь языковой чистоты (что тупо), можешь написать libpciaccess на жабе. Это тоже не проблема.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от Shadow

Гм. Сравни OOM Killer в Linux и в FreeBSD. Особенно в Linux 2.4 и FreeBSD тех же времён. В Линуксе лаконичен и и логичен, но не работает. Во FreeBSD вообще нечитаемая дичь, разная для разных архитектур, но работает.

А у меня, кстати, есть обратный пример: udev и devd из FreeBSD. Первый – лютая срань, написанная наркоманами. Один только парсер правил в виде switch-case на полторы тысячи строк на C чего только стоит. Второй – маленькая прога на C++ с парсером правил на bison и общим размером кода меньше, чем парсер правил в udev.

Работают, правда, оба примерно одинаково, потому что хрен ли от udev/devd вообще нужно-то?

hateyoufeel ★★★★★
()
Ответ на: комментарий от praseodim

Согласен, но по сути С и С++ как раз таки и стали уже стандартом. Выкинуть их на мороз не получится никак, они используются для написание компонентов для почти всех новых проектов, даже тех, что не пишутся сами на С или С++. К ним за последние десятки лет добавилась ещё Java, ставшая стандартом в целых отраслях.

Это всё тоже самое, просто айтишники привыкли, что это молодая отрасль. Но она уже не молодая, серьёзному интерпрайз ИТ уже более 50 лет, а значит стандарты уже есть и менять их никто в здравом уме не будет. Причём стандартом сейчас является не только С и С++, но и львиная часть окружения nix. И что ещё интереснее, не того окружения, которое базовое из unix, а того, что родом из конца 80х и 90х годов. То есть из bsd и linux.

ixrws ★★★
()
Ответ на: комментарий от ixrws

что разница ничтожно мала в сравнении с 220

Я дома в России на розетки веду 2.5 квадрата. Использую дорогие изогнутые круглогубцы. Руки у меня сильные. И всёравно за...ся.
Как на ту же мощность 110В тянуть 4 квадрата - я подумать боюсь (у себя тянул в древний щиток на лестнице, это вообще ад).

Shadow ★★★★★
()
Ответ на: комментарий от hateyoufeel

Я не говорил, что в FreeBSD oomkiller наркоманы писали. Просто он большой и сложный.

Shadow ★★★★★
()
Ответ на: комментарий от Bad_ptr

Нет. Сечение провода зависит от тока. А мощность = ток * напряжение.
Сравни 800В зарядки теслы с 450В зарядками chademo (обе по 50 кВт) - у теслы кабель заметно тоньше.

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 2)
Ответ на: комментарий от Shadow

Если кабель — это сопротивление, как нагревательный прибор,
то его тепловая мощность не может быть выше электрической мощности(100% КПД?).
Следовательно, какую мы мощность на провод подаём — так он и греется.
Т.е. нагрев провода зависит от электрической мощности, а не от тока.

Или нет...

Bad_ptr ★★★★★
()

Что всё-таки нужно для полного счастья?

Понизить ожидания.

ugoday ★★★★★
()
Ответ на: комментарий от Harald

потому что внезапно жабомашина захочет сборкой мусора заняться и похерит все тайминги

Вроде же была real time java :)

vasya_pupkin ★★★★★
()
Ответ на: комментарий от thunar

Блин, да, от напряжения тоже зависит, но только не от того, которое подаётся, а которое падает на сопротивлении.

Думаю ТАМ не всё так однозначно.
ТАМ за океанами, где 110, там и частота другая, да и сопротивление приборов-потребителей небось иное.

Или в америке провода толще кладут?

Bad_ptr ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.