C++ Logo

sg19

Advanced search

Re: [isocpp-sg19] Standardizing Graph concepts

From: Vinnie Falco <vinnie.falco_at_[hidden]>
Date: Thu, 18 Jun 2026 12:08:06 -0700
On Thu, Jun 18, 2026 at 11:55 AM Phil Ratzloff <Phil.Ratzloff_at_[hidden]>
wrote:

> Michael has been the one to promote a graph library as part of the
> standard as a part of the functionality used in machine learning, so I'll
> let him provide the details.
>

I am looking at P3127R1 which came out last year. This looks like a very
well written set of papers. I note that the papers are split up into areas
of concern: Overview, Background, Algorithms, and so forth. This is my
preference yet there are conflicting opinions. One prominent officer said
they prefer everything to be folded into one paper for ease of reading. I
find this unpersuasive.

I learned something from P3127R1. "CLRS" refers to a specific tome which
establishes a common vocabulary and set of concepts. It appears to be the
API Schelling point which C++ graph libraries naturally converge to. That
is, that graphs and their algorithms are an area of study by a relatively
smaller group of practitioners who have already naturally converged on
vocabulary and representation (vertex list I believe).

What was the motivation for writing these papers if the library already
exists?

Let me give you an example. std::filesystem could have stayed in the
ecosystem (i.e. Boost, or GitHub). Yet standardization brings measurable
benefits. It provides a common API and a prescribed set of implementation
behaviors so that it can work on every platform. This is necessary because
filesystem is a portable API which wraps non-portable or operating system
level operations.

Yet graphs and their algorithms are already portable as they can be
expressed in pure C++ with no external libraries or operating system APIs.

I presume Michael is Michael Wong?

Thanks

Received on 2026-06-18 19:08:20