Sign in

Eric Niebler

@ericniebler.com
1.2K followers 85 following 246 posts

Distinguished C++ nerd at @nvidia, father, @isocpp member, former nomad, and sometimes artist wannabe. opinions are my own he/him

PostsRepliesMedia
Eric Niebler @ericniebler.com · 26/09/2026
not the hero we need, the hero we deserve
030
Eric Niebler @ericniebler.com · 20/09/2026
static.klipy.com
Dwight Schrute: It's True
Alt: Dwight Schrute: It's True
000
Eric Niebler @ericniebler.com · 17/09/2026
Death from the tainted beef in his Big Mac
040
Eric Niebler @ericniebler.com · 16/09/2026
Note to self: start going to Ren Faires.
000
Eric Niebler @ericniebler.com · 03/09/2026
New Bond film sounds kinda shit
000
Eric Niebler @ericniebler.com · 29/08/2026
Had he said "acid rain" instead of "ozone hole" he'd have a valid point.
100
Eric Niebler @ericniebler.com · 29/08/2026
This month, the NWCPP talk was about CUDA Tile C++, something I worked on, and next month it's about std::execution -- the C++26 async model -- another thing I worked on! Quite a lot, actually. I'm planning to be there. Come say hi. nwcpp.org/Sept-2026.html #cpp
nwcpp.org
Sept 17, 2026: The Async Model is Here. Bring Your Own I/O (for now) — std::execution in C++26
061
Eric Niebler @ericniebler.com · 27/08/2026
Fuck. Sharing one of my favorite Tim Curry moments. Fuck. youtu.be/0T_RKz7Qmug?...
youtu.be
Annie (1982) | Easy Street | Carol Burnett, Tim Curry, Bernadette Peters
YouTube video by The Film Scene
000
Eric Niebler @ericniebler.com · 23/08/2026
Portable-ish code for getting the pretty name of a type godbolt.org/z/Y5zqxbvP1 #cpp
Screenshot of C++ code with a compile-time assertion that nameof<int> == "int"
040
Eric Niebler @ericniebler.com · 23/08/2026
I finally got `import std` to work on @compiler-explorer.com godbolt.org/z/3P5b11f5M #cpp
screenshot of Compiler Explorer compiling a C++ program that does `import std`
1162
Eric Niebler @ericniebler.com · 23/08/2026
In consteval you could always allocate and ignore the inner buffer.
100
Eric Niebler @ericniebler.com · 23/08/2026
The proposal (wg21.link/p3019) makes a bunch of references to the small-buffer optimization, like
Drafting note: The above is intended to permit a small-buffer-optimization and handle the case where allocators
compare equal but we do not want to swap pointers.
100
Eric Niebler @ericniebler.com · 21/08/2026
Does anybody know if there is a conforming implementation of C++26's std::polymorphic that stores small object in situ? I'm trying to avoid writing one. #cpp
114
Eric Niebler @ericniebler.com · 18/08/2026
came here to say this
010
Eric Niebler @ericniebler.com · 12/08/2026
Jeff Bridges as The Dude from The Big Lebowski saying, "I hate the fucking Eagles, man."
020
Eric Niebler @ericniebler.com · 10/08/2026
This woman is an absolute boss.
static.klipy.com
Cute Child Tipping 'RE2PECT' Hat
Alt: Cute Child Tipping 'RE2PECT' Hat
030
Eric Niebler @ericniebler.com · 10/08/2026
I remember when it was called octothorpe.
120
Eric Niebler @ericniebler.com · 04/08/2026
w̶h̶i̶c̶h̶ that
101
Eric Niebler @ericniebler.com · 01/08/2026
Plan to take time off when you get it. I couldn't get out of bed for 3 days after my first shot.
130
Eric Niebler @ericniebler.com · 28/07/2026
💀
000
Eric Niebler @ericniebler.com · 24/07/2026
May I suggest: IncelEdsel
000
Eric Niebler @ericniebler.com · 22/07/2026
But why shower before a workout?
100
Eric Niebler @ericniebler.com · 09/07/2026
🙋‍♂️ Also, @ and ` aren't in the character set before C++26, and those characters are used extensively in Doxygen comments.
120
Eric Niebler @ericniebler.com · 30/06/2026
Nice! That makes sense.
110
Eric Niebler @ericniebler.com · 29/06/2026
Nice, but why not just a single backtick followed by a (potentially qualified) identifier? a `plus b You know, like creating an S-expression in Lisp (if I'm remembering correctly).
310
Eric Niebler @ericniebler.com · 20/05/2026
It is
100
Eric Niebler @ericniebler.com · 19/05/2026
power move
000
Eric Niebler @ericniebler.com · 19/05/2026
stdexec has real docs now! nvidia.github.io/stdexec/inde... i was able to leverage the work i did to specify std::execution for c++26 by pointing Claude at eel.is/c++draft/exec. yay! #cpp
nvidia.github.io
Welcome to stdexec — stdexec dev documentation
181
Eric Niebler @ericniebler.com · 17/05/2026
How did you learn sewing?
110
Eric Niebler @ericniebler.com · 14/05/2026
He's got my vote, whenever he runs
021
Eric Niebler @ericniebler.com · 14/05/2026
000
Eric Niebler @ericniebler.com · 30/04/2026
tagging @hanicka.net
020
Eric Niebler @ericniebler.com · 27/04/2026
Have web services become less reliable since we got AI coding assistants? Is it just me?
262
Eric Niebler @ericniebler.com · 27/04/2026
In C++, customization point objects like `std::ranges::begin` have been a thing for a while now. I'm a little surprised compiler diagnostics haven't adapted. CPOs are essentially functions. Shouldn't diagnostics refer to them as functions instead of as objects?
001
Eric Niebler @ericniebler.com · 26/04/2026
I love both Alien movies. THERE'S ONLY TWO.
110
Eric Niebler @ericniebler.com · 25/04/2026
You eventually published something like that in the UJ (University Journal). I drew the accompanying illustration. Phil "Fashion" Plait. Not one of my best, but hey.
100
Eric Niebler @ericniebler.com · 23/04/2026
I wish I hadn't. It's not too late for you.
000
Eric Niebler @ericniebler.com · 07/04/2026
Hugely underrated film
010
Eric Niebler @ericniebler.com · 17/03/2026
About half of my time developing stdexec is spent working around MSVC conformance and codegen issues. Another ~25% is spent doing the same for EDG-based compilers.
media.tenor.com
a cartoon character is covering his eyes with his hands .
Alt: Stitch, from the animated Lilo and Stitch movie, claws their eyes in abject frustration.
030
Eric Niebler @ericniebler.com · 20/02/2026
Refreshing your .clang-format feels a bit like rearranging the furniture in your living room. It's the same old stuff in the same old room, but somehow it feels new.
230
Eric Niebler @ericniebler.com · 14/02/2026
Same. I like the cut of JB Pritzker's jib.
010
Eric Niebler @ericniebler.com · 30/01/2026
THIS
1102
Eric Niebler @ericniebler.com · 15/01/2026
I was a regular at a pho place on Capitol Hill. I would walk in, the guy would nod and mumble "pho ga", and the bowl would be in front of me before I could find my place in my book.
030
Eric Niebler @ericniebler.com · 10/01/2026
yes, gcc and clang will both get it "wrong" in situations. there's something fishy going it. it *may* have something to do with recursive template instantiations, but that's a shot in the dark.
100
Eric Niebler @ericniebler.com · 09/01/2026
I have my own version of std::conditional_t, implemented to instantiate fewer class templates (attached). The weird thing is, I have encountered scenarios where my conditional_t picks the wrong branch, whereas std::conditional_t picks the right one. This baffles me. Am I crazy?
An implementation of std::conditional_t that only instantiates two class templates.
231
Reposted by Eric Niebler
Jason Turner @lefticus.bsky.social · 12/12/2025
I've built a text adventure game engine on top of the C++ Standard. Why? I have no idea. But it's a learning tool with quests and time travel and artifacts and NPC's and XP and ... well, you just have to check it out! cppevo.dev/adventure
cppevo.dev
C++ Standard Adventure - cppevo
Explore the C++ standard as an interactive text adventure game. Navigate between C++ eras, collect knowledge, and learn the language.
34514
Eric Niebler @ericniebler.com · 28/12/2025
I've put this little type-erasure library on github for safe-keeping. github.com/ericniebler/...
github.com
GitHub - ericniebler/any: a library for building type-erasing wrappers
a library for building type-erasing wrappers. Contribute to ericniebler/any development by creating an account on GitHub.
092
Eric Niebler @ericniebler.com · 24/12/2025
godbolt.org/z/avMYaTor8 I love how clang just optimizes the whole thing away.
050
Eric Niebler @ericniebler.com · 24/12/2025
The trick is that any::interface<ifoo, Model> inherits from Model. any::any<ifoo> builds a clever model, instantiates ifoo with it, and inherits from the result.
030
Eric Niebler @ericniebler.com · 24/12/2025
No Advent of Code for me. Instead, I've used the break to write the type-erasure library I have always wanted. C++ doesn't make it easy to have both dynamic polymorphism *and* value semantics, but this little utility does! Interfaces can extend other interfaces, and it works in consteval, too. 🤩
a screenshot of an editor showing a snippet of code that defines an interface, and a type that models the interface non-intrusively, and a type named `any` that is parameterized on the interface and that stores the model while erasing its type.
4196