LINUX.ORG.RU

История изменений

Исправление wandrien, (текущая версия) :

В общем, тогда надо писать на Java или Lisp.

Почему в 70-х парни сделали пародию на Паскаль, и она стала промышленным стандартом – более менее ясно.

Но почему к 2020-му никто не почесался сделать нормальную интеграцию возможностей железа в системный язык, мне не ясно. И кивают на прикладную Java.

Что мешает ввести типы checked int, unchecked int, wrapped int, int with nan с ясно описанной семантикой? (UB только за unchecked int оставить.)

Или что мешает ввести спецификаторы для блоков кода наподобие:

checked {
   /// some math...
}
unchecked {
   /// some math...
}

Или даже:

try checked {
   /// some math...
} else {
   return ERANGE;
}

Любой современный компилятор умеет всё это в бэкэнде, нужно только захотеть.

Приходится ссылаться на какую-нибудь маргинальщину типа zig. А хочешь писать на промышленном стандарте – твоя участь страдать.

Люди стали совсем дурные?

Исходная версия wandrien, :

В общем, тогда надо писать на Java или Lisp.

Почему в 70-х парни сделали пародию на Паскаль, и она стала промышленным стандартом – более менее ясно.

Но почему к 2020-му никто не почесался сделать нормальную интеграцию возможностей железа в систмный язык, мне решительно не ясно. И кивают на прикладную Java.

Что мешает ввести типы checked int, unchecked int, wrapped int, int with nan с ясно описанной семантикой? (UB только за unchecked int оставить.)

Или что мешает ввести спецификаторы для блоков кода наподобие:

checked {
   /// some math...
}
unchecked {
   /// some math...
}

Или даже:

try checked {
   /// some math...
} else {
   return ERANGE;
}

Любой современный компилятор умеет всё это в бэкэнде, нужно только захотеть.

Приходится ссылаться на какую-нибудь маргинальщину типа zig. А хочешь писать на промышленном стандарте – твоя участь страдать.

Люди стали совсем дурные?