LINUX.ORG.RU
ФорумTalks

Будут ли языки программирования супер высокого уровня?

 ,


0

1

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

На мой взгляд за последние лет 30 языки программирования не стали выше уровнем. Если взять тот же Haskell, который в каком-то виде в первый раз появился в 1990 году, то я бы не сказал, что Rust последней версии чем-то категорично его превосходит. В целом примерно одни и те же идеи тусуют в разных пропорциях. Я тут говорю исключительно про то, насколько язык помогает программисту писать код.

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

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

Или же программирование в текущем виде достигло своего апогея и никаких принципиально новых идей уже не стоит ожидать?

★★★★

Мой идеал - HLL типа руби или питона, но с нормальным компилятором плюс zero-runtime. Почему этого нет - масса причин, от технических до психологических.

yu-boot ★★★★★
()

Можно конечно и зайца научить курить...

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

А с другой стороны, демкам со сцены - до сих пор удивляюсь. Каким образом ЭТО - можно в 64 килобайта впихнуть...

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

Если мы берём код, который обрабатывает структуры данных какими-то алгоритмами, то такое ощущение, что тут ничего принципиально лучше не придумать.

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

шалаш

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

Forum0888
()
Последнее исправление: Forum0888 (всего исправлений: 3)

Или же программирование в текущем виде достигло своего апогея и никаких принципиально новых идей уже не стоит ожидать?

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

Поэтому отрасль, как сошедший с ума робот, без проблем подпитываемый топливом и баблом, постоянно чего-то создает, а чего-то отправляет в утиль. Новые языки, новые проекты, новые симуляторы действий человека, новый интернет, 3G-4G-5G-6G, новые базы данных для накопления сведений о человеках (а больше не о ком). Особой практической пользы это не несет, но образует некий замкнутый круг суеты вокруг программирования, создающий во впечатлительных головах видимость прогресса. Повышение уровня языков - лишь часть этого процесса, позволяющий человеку хоть как-то поспевать за этим взбесившимся процессом, не выходя из непреодолимых рамок своих способностей. Усиливать контроль за самим собой, создавать распухающий в объемах виртуальный мир - в общем продолжать симуляцию кипучей деятельности практически без какой-либо связи со своей реальной жизнью и реальными потребностями

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

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

Какие проблемы решают: Rust, C++, Python, JavaScript, Haskel, ...

Очевидно, что разработчики акцентировали их для упрощение/улучшение какой-то ниши задач.

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

Поэтому даже если создадут еще двести ЯП, то их все равно будет мало.

Почему же все так?

Да потому, что создаются они на основе технологических подходов 60-х годов.

Это для начала дискуссии.

Forum0888
()

т.е. мы не будем рассматривать фантастику вроде того, что ты пытаешься там в чате чего-то объяснять роботу

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

Мне бы вот наоборот хотелось, чтобы люди могли работать в режиме «программ», когда им можно точно объяснить, что ты от них хочешь, и они гарантировано поняли (я не говорю сделали, а именно поняли с абсолютной точностью). Естественные языки в некоторых сложных случаях не всегда работают, особенно если вопрос многослойный, а собеседник не отличается интеллектом.

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

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

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

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

безудержное размножение взбесившейся отрасли - она сама создает себе задачи, сама их решает и сама по мере возможности впаривает

Изломать все вычислители, да и дело с концом! Раньше без них жили, и ничего, в космос летали!

Заводы стоят, одни программисты в стране! Умеют только кнопки давить, кофе лакать да по видео друг другу звонить! Галош нормальных в стране не купишь, ёкарный бабай, куда это годится. Кхе-кхе-кхе.

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

У вас какая-то личная травма?

Аллергия на ворчливых дедов, которые думают, что если они чего-то не понимают, то это говно и ненужно %)

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

Аллергия на ворчливых дедов, которые думают, что если они чего-то не понимают, то это говно и ненужно

А вычислители то зачем ломать? Они не овно и они нужны. Чем вам вычислители мешают?

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

Языки программирования - это подмножество компьютерных языков.
Компьютерные языки - это подмножество формальных языков.

Русский язык - это естественный язык. Естественные языки не являются ни формальными, ни компьютерными, ни тем более языками программирования.

javascript
()

и никаких принципиально новых идей уже не стоит ожидать?

В ближайшее время надо ожидать большого пенделя большинству «ИИ-программистов» от постановщиков т.з.

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

Мне бы вот наоборот хотелось, чтобы люди могли работать в режиме «программ», когда им можно точно объяснить, что ты от них хочешь, и они гарантировано поняли (я не говорю сделали, а именно поняли с абсолютной точностью).

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

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

Давать команду - это не программирование.

Хаха. Ты точно программист?

Psilocybe ★★★★
()

В связи с последними разработками в сфере ИИ

Ничего не изменится, так как разработки в сфере ИИ не продвинулись ни на йоту. Потуги с помощью индусов навернуть огромное количество условных операторов над базой написанного кода и обернуть это в чат-бота мало чем ушедшего от ALICE - это не ИИ. Это имитация бурной деятельности и не более чем маркетинговая чушь, способная изумить разве что менеджеров низшего звена и формошлёпов недоучек. Этот подход совершенно не даёт возможности писать новый код(потому что это всего лишь обёртка над базой написанного), ни оптимизировать повторение того, что уже написано, так как набор if-else не понимает связей между разрозненными кусками кода из базы и не может собрать из них даже минимально работающую программу сложнее хелловорда. И даже с хелловордами у этого чатбота проблемы, когда есть более одного способа их написать. Чат-бот не видит разницы между плохими и хорошими вариантами кода, а потому выдаёт некий средний результат. И чтобы довести этот результат до ума нужен, внимание, опытный программист. А опытному программисту проще и быстрее написать с нуля. Например.

И вся современная игра в чат-ботов - это такой себе неудачный костыль над командным интерпретатором. Только вместо того, чтобы научить пользоваться людей интерпретатором, люди пытаются научить интерпретатор говорить. Но сути это не меняет. И если человек не понимает логики работы машины, он что в консоли сделает sudo rm -rf /, что словами скажет «удали все ненужные файлы».

Так что я лично не то, что не вижу никакого качественного скачка в программировании в ближайшее время. Напротив. Ресурсы тратятся на бессмысленные, моргающие, крутящиеся и пиликающие обёртки из фильмов про «хакеров» прошлого века. А реальной работой занимаются единицы.

shell-script ★★★★★
()
Последнее исправление: shell-script (всего исправлений: 2)

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

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

Я бы больше рассчитывал на мощь IDE и библиотек. Здесь прогресс лучше виден. А разработчики языков обычно показывают, как они круто считают факториал и числа Фибоначчи. Ок, молодцы, а дальше что? Ну вот мы ещё блокчейны делаем. Ну хорошо, делайте.

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

Kogrom
()

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

Добро пожаловать в КОБОЛ.

при этом то, что сейчас требует месяца работы, будет требовать трёх дней

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

Идея не новая и уже обсосана в прошлый раз, когда хайповали на теме ИИ (в 60-е).

мы не будем рассматривать фантастику вроде того, что ты пытаешься там в чате чего-то объяснять роботу

Это единственный практически ценный вариант.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)

Все идеи закончатся камланием перед камерой ИИ о ниспослании благодати…

P.S. Если серьезно, то все разделиться на язык деклараций описания ТЗ и формализованного технического языка для генерации кода с помощью ИИ.

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

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

imul ★★★★★
()

Моё никому неинтересное мнение, что языком высокого уровня стали библиотеки. Немного glue logic и оно работает

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от yu-boot

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

А всё упирается в том, что между ними нет стандартного интерфейса, типа как между модулями GStreamer

I-Love-Microsoft ★★★★★
()

То что есть - это программирование на языке предметной области. Выше вроде бы ничего нет.

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

сhatgpt это программирование с нечетким результатом :)

cylon17
()

Или же программирование в текущем виде достигло своего апогея и никаких принципиально новых идей уже не стоит ожидать?

Скорее, нас ждёт нечто новое. Возможен скачок в технологиях и это многое изменит.

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

Скорее, нас ждёт нечто новое. Возможен скачок в технологиях и это многое изменит.

Техническое задание станет «программой».

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

Возможен скачок в технологиях и это многое изменит.

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

vaddd ★☆
()

Будут ли языки программирования супер высокого уровня?

Они НУЖНЫ!

Ныне программисты должны знать ТОННЫ разного APi.
Это приводит к нерациональному расходу времени при разработке алгороитмов.

При этом компиляторы просто ничего не знают об используемом API (разве что типы аргументов и результата).

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

Приведу маленький пример.

Некий (не назову имени программиста из уважения к нему) получает имя текущей директрии процесса.

После этого он проверяет достаточен ли был размер буфера в который было получено имя директории.

Все ok, за исключением пустяка!

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

Мелочь?

Нет не мелочь.
Это следствие того, что нынешнии технологии - ЛАБЫ!

Forum0888
()
Последнее исправление: Forum0888 (всего исправлений: 3)

Будут ли языки программирования супер высокого уровня?

Если бы только этим вопросом заниматься.
Эх.

Приходится тонны API разной тематики разрабатывать.

Много API приходится разрабатывать «с нуля», но иногда смотрю сторонний API и если «ничего», то беру его и «причесываю».

Почему так?
Потому, что по иному «много хлопотнее».

Forum0888
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)