alt.hn

5/22/2026 at 2:06:44 PM

Neoclassical C++: segmented iterators revisited

https://boostedcpp.net/2026/05/18/neoclassical-c-segmented-iterators-revisited-1/

by ibobev

5/24/2026 at 10:52:20 AM

Very interesting, this is the first time I hear about segmented iterators and hierarchical algorithms.

I faced a similar issue myself when implementing a chunked vector a la `std::deque`, but opted for callback-based internal iteration, i.e.

    void ChunkedVector::forEach(auto&& f)
    {
        for (auto& chunk : chunks)
            for (auto& item : chunk) 
                if (f(item) == ControlFlow::Break)
                    return;
    }
Where `ControlFlow` is just:

    enum class [[nodiscard]] ControlFlow : bool
    {
        Continue,
        Break
    };
This is massively simpler to implement, and can model simpler algorithms such as `for_each`, `fill`, `transform`, `count`, `accumulate`.

It's sometimes inferior in terms of ergonomics, and cannot express more complicated algorithms or iteration patterns (e.g. partial range, going backwards), but so far it has served me well.

Just something to consider if implementation simplicity is the priority and there's no need for a very generic suite of algorithms.

by SuperV1234

5/24/2026 at 8:07:04 AM

Genuine question, where does te average developer go to learn CPP in 2026? Despite the usual complaints it’s alive and well and Rust will not replace it.

CPP has become infinitely easier to write for me. That’s an exact figure, my total output of usable CPP lines was zero prior to LLMs.

I do however need to at least be able to write basic CPP to evaluate the code I’m generating. It’s just so hard to comb through all the bad and over complicated code out there, bad advice and outdated opinions.

by willtemperley

5/24/2026 at 10:54:45 AM

Read Bjarne Stroustrup’s intro to programming book and then read other books.

find more books from additional readings sections of books you end up liking.

Don’t use LLM for learning as it is useless compared to searching amazon or doing general web search to find books.

You can recursively learn anything you need by finding books about needed subjects.

by ozgrakkurt

5/24/2026 at 10:03:48 AM

> Despite the usual complaints it’s alive and well and Rust will not replace it.

to some degree it is already being replaced:

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj...

source: https://blog.google/security/rust-in-android-move-fast-fix-t...

by tcfhgj

5/24/2026 at 10:11:36 AM

Why does any mention of C++ nowadays turn into a Rust debate? These can coexist even in a single project via C ABI. Also, despite the vast syntax and semantic differences, an experienced dev will be able to apply most of their knowledge from one to the other.

by arcadialeak

5/24/2026 at 12:02:06 PM

My fault for mentioning Rust (perhaps I did it because it’s vaguely amusing watching Rust maximalists flex).

Just to add to the bait, I find CPP libraries much more terse and functional, Rust libs tend towards over complexity and feature flexing.

by willtemperley

5/24/2026 at 11:10:40 AM

It's because crowing about Rust is like sending dick pics. I suspect it's the same part of the brain responsible with the same neural pathways stimulated.

by bregma

5/24/2026 at 10:19:57 AM

>"Why does any mention of C++ nowadays turn into a Rust debate?"

Because for most developers language is a religion rather than just a tool.

by FpUser

5/24/2026 at 11:40:47 AM

If a tool had been replaced by a better tool, wouldn't it be natural to discuss that?

by twic

5/24/2026 at 12:26:09 PM

First - the tool in question had not been replaced. Second -discussion based on merits is one thing. Holy war is something totally different.

Personally I do not consider Rust to be a better tool but it does not matter. Each one is free to drink their own poison. I do not get obsessed about screwdrivers and I have used many.

by FpUser

5/24/2026 at 1:02:52 PM

In many instances the tool has been replaced.

by tcfhgj

5/24/2026 at 1:35:29 PM

You have written a glib and low effort reply to anything that disagrees with your Rust-maximal worldview. The sheer immaturity of Rust devs is enough to put me off the language.

by willtemperley

5/24/2026 at 2:25:01 PM

That's actually a common pattern and to me that's a bit off-putting as well.

I have seen examples where some opinion gets momentum and it's repeated over and over again on the Internet even though the merit is very questionable.

Haven't looked enough into Rust to form an opinion though.

by bulbar

5/24/2026 at 3:51:38 PM

I haven't voiced an opinion, but a fact.

Otherwise, I don't respond to (imo) obvious provocations from questionable motives.

by tcfhgj

5/24/2026 at 12:52:33 PM

I dont think so.

The problem is the sunk cost fallacy.

by tcfhgj

5/24/2026 at 12:59:06 PM

You mean there are still people left who do not want to rewrite everything in Rust?

by FpUser

5/24/2026 at 11:46:47 AM

> We adopted Rust for its security and are seeing a 1000x reduction in memory safety vulnerability density compared to Android’s C and C++ code.

This is a pretty poor post. It’s impossible to see what exactly they’re comparing but they seem to be comparing post LLM code to pre LLM code.

by willtemperley

5/24/2026 at 12:53:49 PM

Don't distract, please.

Here you can find a general discussion of the article: https://news.ycombinator.com/item?id=45918616

by tcfhgj

5/24/2026 at 1:02:41 PM

Don’t tell me what to write.

Nevertheless, your feedback, despite its rudeness, backs up my criticism so thanks. Are you a Rust dev?

by willtemperley

5/24/2026 at 2:10:23 PM

Most important thing is to use material (or tell LLMs) that use C++20.

If you don't need compile time techniques (templates, concepts, consteval, context, ...) then C++17 might be acceptable, too.

Modern C++ is pretty nice to write and compile errors are sane as long as you utilize concepts where it makes sense.

by bulbar

5/24/2026 at 11:24:31 AM

Cppreference.com is my favorite resource for up to date info.

by rbancroft

5/24/2026 at 10:05:05 AM

Since you are already making use of LLMs, you could also ask questions about the code that it produces. I've been asking Google's AI overview and Deepseek while doing my first ever C++26 project, usually not to produce any code but to give advice or list possible approaches to implementing a feature. It's a very slow path, to the point that my project has currently more git commits than lines of code, but I'm convinced that it will pay off in the long run.

by arcadialeak

5/24/2026 at 8:21:33 AM

>"where does te average developer go to learn CPP "

ain't nothing better than books and doing some real project

by FpUser