The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Релиз языка программирования Go 1.17"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Ссылки "<<" и ">>" открывают первые и последние 10 сообщений.
. "Релиз языка программирования Go 1.17" +/
Сообщение от Брат Анон (ok), 18-Авг-21, 10:03 
> Для того, чтобы об этом рассуждать, надо для начала ввести критерии языка
> промышленного назначения.

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

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

Нет. Куча дыр в самом языке, и ещё больше дыр во всех программах написанных на нём.

> Если же говорить об областях, в которых от бесперебойной работы ПО зависит
> жизнь и здоровье человека (как экстремуме), то даже в Ada с
> ее богатой системой типов выразительных средств недостаточно, чтобы дать 100% гарантии.

Ада по определению не может дать 100% гарантии. Так как ВНЕЗАПНО её компилятором является gcc, который никто никогда не проверял и не верифицировал даже для основных платформ. Более того, на компанию, которая делает Аду распространяются требования торговой палаты США, а значит она не имеет права продавать Аду в Россию со всеми вытекающими последствиями. Делайте выводы.

> В идеале, для критических алгоритмов должно требоваться доказательство их корректности,
> а типы должны учитывать контекст. Такой язык есть, хоть и в
> экспериментальном статусе (по сути, разрабатывается одним человеком) - Idris. Да, ФП
> а-ля Haskell, и чтобы программировать в этой парадигме, нужна определенная подготовка,
> но без выделения pure functions эта задача вряд ли вообще решаема.

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

Автомат Калашникова -- потому и автомат Калашникова, что он _предельно_ прост, что влечёт за собой надёжность и эффективность. Ни Идрис, ни Хаскель не удовлетворяют этим требованиям.


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Релиз языка программирования Go 1.17, opennews, 17-Авг-21, 09:02  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру