The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Дрю ДеВолт представил язык системного программирования Hare"
Отправлено Аноним, 29-Апр-22 17:20 
> Да тут у каждого своё видение всего. Пишешь про препроцессор, который обрабатывает
> токены, видят инты.

Все чуть сложнее чем некоторыые пытаются изобразить.
1) Вообще-то препроцессор немного умеет в математику сам, насколько я помню. Целочисленные операции в директивах препроцессора имеют место быть.
2) Он также умеет в булевские операции и условные операнды. В том числе и с целыми числами из 1). Скажем, #if (SOME_CONST == 2) вполне валидно. И более продвинутая математика над этим тоже.

При этом нас начинает колыхать - а что такое "2" в понимании препроцессора. И как эта математика ТАМ работает. И насколько при вычислениях/операциях совпадает с остальным ЯП. Потому что some_var = (SOME_CONST + 10) ничему не противоречит. И было бы очень кстати если бы результат операций был бы симметричен. Но это не совсем так. Целочисленная математика в препроцессоре специфицирована как обычно в сишке, т.е. никаковски.

А препроцессор так то кроме всего прочего еще и почти-тюринг-полный. И единственный лимит на сложность того что он делает это лимит на число уровней вложенности. Гага, токены, с добавкой бульонов и целых могут нехилую логику завернуть. Можно самому compile time assert например сделать. Да, это "всего лишь условная кодогенерация". И все же.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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