Адрес: ул. Б. Очаковская 32 Москва Россия
Наши официальные канал и чат в telegram
Поднимем Devuan на вершину Distrowatch! Просто перейдите по ссылке один раз в день.

Энтузиаст создал do-нотацию для C++

Новости собранные из разных RSS источников
Аватара пользователя
root:#
Site Admin
Сообщения: 1475
Зарегистрирован: Вт ноя 08, 2022 3:27 pm
Благодарил (а): 48 раз
Поблагодарили: 26 раз

Энтузиаст создал do-нотацию для C++

Сообщение root:# »

Энтузиаст создал do-нотацию для C++
Энтузиаст написал собственный DSL на макросах, который работает как do-нотация из функциональных языков. Используются продвинутые возможности препроцессора. В представленном проекте реализована новая техника для парсинга DSL, что может поспособствовать созданию дальнейших DSL на препроцессоре C и C++. Код в репозитории написан на C++23 и открыт под лицензией MIT, а сама техника может быть использована и просто в си-препроцессоре. // Без DSL: auto result = bind(mx, [&](auto x) { return bind(my, [&](auto y) { return make_value(x, y); }); }); // С DSL: auto result = DO( LET x IS(mx); LET y IS(my); return make_value(x, y); );
Источник: https://www.opennet.ru/opennews/art.shtml?num=64975