Eric Niebler

Eric Niebler

@ericniebler.com

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

1.1K followers85 following248 posts

Are there any range-v3 users out there? Does anybody care to become a maintainer? The project mostly needs someone to review and merge pull requests and occasionally deal with bitrot in the github actions CI jobs. Inglorious, to be sure. But a nice thing to put on your job resume.

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

He's got my vote, whenever he runs

Sherrilyn Ifill@sifill.bsky.social

Feeling overwhelmed with all of this. LISTEN. Another Louisiana resident (Marshawn is the only name we have) testifies against the state’s racial gerrymander, speaking truth to power up and down the hearing room and predicts how this story will end. Speak your truth, fight and believe.

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?

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.

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.

THIS

Eniko Fox@enikofox.com

Man I wonder why coders, famed for enjoying writing code but hating reading code, aren't taking to the tool that turns them into dedicated code readers for the hallucination machine

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?

I've put this little type-erasure library on github for safe-keeping. github.com/ericniebler/...

github.comGitHub - ericniebler/any: a library for building type-erasing wrappersa library for building type-erasing wrappers. Contribute to ericniebler/any development by creating an account on GitHub.
Eric Niebler@ericniebler.com

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. 🤩

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. 🤩

I've started using digit separators when checking the value of __cplusplus and feature test macros, and i am liking it. 2019'02 is less work for my old brain.

UPDATE: stdexec gets native support for ASIO! HUGE community contribution from github user @RobertLeahy, an expert in both ASIO and std::execution. With the new `use_sender` completion token, ASIO's async APIs return senders. Now you can program generically with async network operations! 🎉

is there a good tool, possibly a vscode extension, for splitting git commits? i have a workflow in mind: define some empty "commits" and then graphically drag chunks into each one. 1/

and then a way to test that each commit is sound, stopping on compile/test failures, editing and/or dragging chunks from "future" commits as needed, and then continuing. would save me so much time. fin/

I take comfort from knowing that he's fucking things up so badly that things are unlikely to continue this way for very long. 'Cause now he's hurting rich people. And rich people are pain averse.

At first I thought this was a shot in the spaces-vs-tabs war and was like WHOA vertical tab characters MAJOR escalation.

Huw Roberts@huwroberts.net

I'm a vertical tabs convert, super space efficient with them collapsed and that CTRL+Z key command (to expand/collapse) is getting committed to muscle memory. Thanks @firefox.com 🦊

i am constantly looking up: * the C++ feature test macros * the printf format specifiers * the Doxygen special commands i've been doing this for 30+ years. i should just make posters and hang them above my desk already.

In the book Swan Song, the Devil strolls into a movie theater chuckling to himself while WWIII is bringing a rapid end to human civilization. He's laughing because he didn't have to do anything. The humans are blowing themselves up. I think about that a lot.

In the world of Functional Programming, is there a term for a type transformation like: F [a,b,c] -> [F a, F b, F c] Is this some sort of monadic something-or-other?