Информация об изменениях

Сообщение Re: Про идеальный ЯП от 30.07.2024 6:49

Изменено 30.07.2024 7:18 L_G

Re: Про идеальный ЯП
Идеальный язык программирования по синтаксису будет подмножеством естественного языка (например, английского) с четкой формализацией (исключающей неоднозначности).
И он будет в гораздо большей степени высокоуровневым и декларативным, чем нынешние языки, по сути он будет языком для написания технического задания. Это, конечно, не исключает низкоуровневых императивных возможностей всего инструментального набора. (Будут ли императивные конструкции считаться частью того же языка, или это будет отдельным языком — скорее вопрос терминологии. Думается, будет удобнее их разделить.)

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

Характеристики, которые будут оптимизироваться при разработке такого языка — это его 1) человеко-читаемость и 2) выразительность — по этим показателям он может значительно обогнать существующие ЯП.

Можно поспорить о том, будут ли людей, использующих подобные язык+компилятор, по-прежнему называть программистами, но вряд ли стоит сомневаться в экономической эффективности такого подхода.
Re: Про идеальный ЯП
Идеальный язык программирования по синтаксису будет подмножеством естественного языка (например, английского) с четкой формализацией (исключающей неоднозначности).
И он будет в гораздо большей степени высокоуровневым и декларативным, чем нынешние языки, по сути он будет языком для написания технического задания. Это, конечно, не исключает низкоуровневых императивных возможностей всего инструментального набора. (Будут ли императивные конструкции считаться частью того же языка, или это будет отдельным языком — скорее вопрос терминологии. Думается, будет удобнее их разделить.)

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

Но про компилятор — это отвлечение от темы. Обсуждаем язык:
Характеристики, которые будут оптимизироваться при разработке такого языка — это его 1) человеко-читаемость и 2) выразительность — по этим показателям он может значительно обогнать существующие ЯП.

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