Keynote: Reflection in C++26 - Welcome to the meta::[[verse]]! - Inbal Levi - ACCU 2024

  Рет қаралды 3,242

ACCU Conference

2 ай бұрын

ACCU Membership: tinyurl.com/ydnfkcyn
---
Keynote: Reflection in C++26 - Welcome to the meta::[[verse]]! - Inbal Levi - ACCU 2024
---
With a proposal slated to introduce reflection to C++26 (including the “std::meta” namespace) getting strong support in WG21, we can already start imagining a whole new world of possibilities. In this session, we will dive into reflection and its transformative potential within our codebases.
We will start with an introduction of utilities from the reflection proposal.
Then, we delve deeper into practical applications and demonstrate solutions to problems that commonly use reflection and the power it holds.
For the last part, we will explore the possibilities within “Reflection Libraries". This includes both “traditional” libraries which provide functionality, and more “novel” approaches which reshape users’ code. We will look at examples of what such libraries can cover, and demonstrate potential directions the future holds.
Join us as we traverse the meta::[[verse]]
Slides: accu.org/conf-previous/accu2024/
Sponsored By think-cell
---
Inbal Levi
​Inbal Levi is a Lead Software Engineer at Millennium (MPGC Services Ltd) with an interest in code readability, compilers, language and software design. She is an active member of the ISO C++ Standards Committee as Library Evolution Work Group Chair, and as the ISO C++ Israeli NB Chair.
Inbal is also a director at ISO C++ Foundation and the Boost Foundation and puts effort into evolving both the local and international C++ communities, as an organizer of the CoreC++ conference and meetup group, and as the program chair of C++Now.
---
The ACCU Conference is the annual conference of the ACCU membership, but is open to any and all who wish to attend. The tagline for the ACCU is 'Professionalism in Programming', which captures the whole spectrum of programming languages, tools, techniques and processes involved in advancing our craft. While there remains a core of C and C++ - with many members participating in respective ISO standards bodies - the conference, like the organisation, embraces other language ecosystems and you should expect to see sessions on C#, D, F#, Go, Javascript, Haskell, Java, Kotlin, Lisp, Python, Ruby, Rust, Swift and more.The ACCU Conference is a conference by programmers for programmers about programming.
Discounted rates for members.
ACCU Membership: tinyurl.com/ydnfkcyn
2024 Program: accu.org/conf-previous/accu2024/
accu.org
www.accuconference.org/
mastodon.social/@ACCUConf
www.linkedin.com/showcase/accu-conference/
bsky.app/profile/accuconf.bsky.social
accuorg
www.reddit.com/r/ACCUConf/
---
KZbin Videos Filmed, Edited & Optimised by Digital Medium: events.digital-medium.co.uk
#accuconf #programming #cplusplus #cppprogramming #software

Пікірлер: 16
@shavesha
@shavesha 2 ай бұрын
Awesome title.
@fdwr
@fdwr 2 ай бұрын
Hmm, the syntax is the eye stinging, but the uses are intriguing.
@RPG_Guy-fx8ns
@RPG_Guy-fx8ns Ай бұрын
You don't need generic reflection built into your language. just make a menu system that reads a scripting language to generate menu options, then make a transpiler to parse your source code into menu scripts and generate the dispatch code. You can use an arena allocator that keeps track of Menu URLs, registering the functions with unique IDs in a switch case of op codes. But the simplest solution is to just start using config files to puppet your code, and to generate menus.
@jaycarlson2579
@jaycarlson2579 Ай бұрын
Maybe Reflection of function types and names would be ok if it was only a warning if the parameter names changed, and it did not break compilation.
@aniketbisht2823
@aniketbisht2823 2 ай бұрын
30:42 Does this reflect an individual function or the entire overload set? If it's the former then will it fails to compile because of the ambiguity? It would be cool if we could reflect an overload set and pass it around as meta::info objects.
@aniketbisht2823
@aniketbisht2823 2 ай бұрын
Some examples are not working.
@toddfulton2280
@toddfulton2280 2 ай бұрын
When disco from the 70's starts playing in your head...
@mohre1541
@mohre1541 2 ай бұрын
How can i access your slides? There is nothing in the link you mentioned in the description.
@ACCUConf
@ACCUConf 2 ай бұрын
We shall follow this up with the person tasked with providing the slides.
@jaycarlson2579
@jaycarlson2579 Ай бұрын
My opinion --- (Recommended) Do not allow reflection of function parameter names, types yes, names no! Or Store All the function uses with Types and Name and Location in a database, and use them as relevant. (Not Recommended) Reflection for Class Methods, and Members, yes should be ok.
@Ahmed-S-Lilah
@Ahmed-S-Lilah 2 ай бұрын
as always in C++ good idea - worst syntax and implementation. why not Circle or better Jai like reflection and meta programming.
@VivekNa
@VivekNa 2 ай бұрын
Programming languages are not chosen on a whim. There is a trillion lines of C++ code running as of today. I would say that significant whitespace is the worst possible idea for syntax, its subjective. As you write more code all syntax or lack thereof is an irritant and you let the IDE take care of it for you
@Ahmed-S-Lilah
@Ahmed-S-Lilah Ай бұрын
@@VivekNa Dude you're missing my point and you're wrong on multiple levels. 1. My point is that the syntax and library functions for meta programming is very bad. And we have seen better proposals based on circle and jai but they got refused for the worst reasons ever. 2. What the hell does having trillion lines of C++ code have to do with bad language design choices. 3. Yes, significant white space syntax is bad but not my point in C++. 4. When on God's earth have you seen any C++ tooling that actually good to handle anything. 5. Do you think the syntax shown in the video is easy to use?
@dmitrykim3096
@dmitrykim3096 22 күн бұрын
C++ is getting so ugly
Ozoda - Lada ( Official Music Video 2024 )
06:07
Ozoda
Рет қаралды 30 МЛН
😜 #aminkavitaminka #aminokka #аминкавитаминка
00:14
Аминка Витаминка
Рет қаралды 822 М.
Can I Unlock My Tesla With a Google Nest Mini?? 😳👀
0:31
Tesla Flex
Рет қаралды 1,4 МЛН
Как остановить электрический счетчик импульсным прибором
0:23
Остановка счетчика на воду, газ, электричество
Рет қаралды 1,5 МЛН
Телефон - самая грязная ваша вещь
0:24
Up Your Brains
Рет қаралды 2,5 МЛН
Apple designers updating the iPhone design 😂
0:13
Createwithfid
Рет қаралды 1,5 МЛН
iPhone теперь БЕСПОЛЕЗНО воровать 🛠
0:25
Technodeus
Рет қаралды 1,3 МЛН