Видео с CppCon 2021
От: Voivoid Россия  
Дата: 03.12.21 05:55
Оценка: 40 (7)
Начали появляться видеозаписи докладов с CppCon 2021:

Плэйлист: https://www.youtube.com/playlist?list=PLHTh1InhhwT6vjwMy3RG5Tnahw0G9qIx6

( список доступных видео, судя по всему, пополняется каждый день, на текущий момент пока 71 )
Re: Pattern Matching using `is` and `as` Herb Sutter
От: Sm0ke Россия http://ksi.ru.net/
Дата: 05.12.21 01:26
Оценка:
Здравствуйте, Voivoid, Вы писали:

V>Начали появляться видеозаписи докладов с CppCon 2021:


V>Плэйлист: https://www.youtube.com/playlist?list=PLHTh1InhhwT6vjwMy3RG5Tnahw0G9qIx6


В первую очередь посмотрел: Extending and Simplifying C++: Thoughts on Pattern Matching using `is` and `as` — Herb Sutter

Это здорово. Есть что обсудить. Сам пропозал я не читал.

1. Как я понял в inspect { is _ => } означает ветку default, так? Или что это за подчёркивание?
2. Прикольно, что inspect можно использовать как выражение. Следовательно результатом может быть значение разных типов, в зависимости от выбранного кейса?
3. Может-ли inspect вернуть значение, когда в кейсе после стрелочки идёт scope (фигурные скобочки)? Видимо последнее значение скоупа?
4. Собственно может захотеться написать is not ...
5. Я могу захотеть использовать "as" без возможности обращения к rtti (dynamic_cast) ... Неплохо-бы иметь синтаксис с rtti и без, чтобы можно было это указывать как-то лаконично. Например так: (as static)
auto y = x as static T *;

6. Когда есть перегрузка оператора "is" у типа T, но я вдруг захочу вызвать is без перегрузки, чтобы просто проверить тип во времени компиляции. Например так: (is consteval)
if( x is consteval T );

7. Компилятор circle . Кто использовал? Первый раз слышу о нём. Интересно, планируются ли порты на win, mac, etc?
8. "D&E complete" — что это?
Отредактировано 05.12.2021 1:40 Sm0ke . Предыдущая версия .
Re[2]: Off-topic
От: Sm0ke Россия http://ksi.ru.net/
Дата: 05.12.21 01:31
Оценка:
Кстати в моём языке ksi уже давно есть встроенные функции #is #as (они используются как операторы, ставятся между операндами).
Однако там не так наворочено, как в пропозале, конечно.
ksi
Re[2]: Pattern Matching using `is` and `as` Herb Sutter
От: reversecode google
Дата: 11.12.21 14:20
Оценка:
https://circle.godbolt.org/z/64E99s3qq
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.