Plans to add `std::lazy`?

Hi all,

The std::lazy paper caught my eye and I was wondering if this would qualify as a Beman project. If so I may want to take a crack at it.

The code in compiler explorer the paper references has bit rotted slightly, but I recall it being not too hard to fix for current gen compilers.
The more difficult task will be sorting out why it hasn’t progressed. Hopefully it’s just a “not enough hours in the day” problem?

The last thing I saw is that the author needed more time to make the revisions, but I’m not sure why they haven’t been made yet. May be just not enough time as you said.

Hi Paul! It does qualify for a Beman library.

What’s your github user id? I can add you to the beman-project org on github.

I’d suggest starting by cloning GitHub - beman-project/exemplar: Example Beman project (previously called “example”) and modifying it for your library (beman.lazy?). Feel free to ask questions here.

1 Like

Hey David!

That would be great! My Github user id is DeveloperPaul123 (DeveloperPaul123 (Paul T) · GitHub).

You should have the invite. You can use this button on exemplar to create the new repo:

1 Like

I’ve started working on getting this implemented. What was the final decision on the testing suite? Just vanilla C++ for now (asserts)?

I’ve started working on getting this implemented.

That’s great news!

What was the final decision on the testing suite? Just vanilla C++ for now (asserts)?

We don’t have an officially recommended test framework yet so any will work. I personally recommend following beman.exemplar’s GTest usage as it’s the most popular way to write tests in the broader C++ community.

Sounds good, thanks David.

I personally prefer doctest but I can just roll with GTest since it’s already there.

1 Like

If you can make it work reasonably transparently, I wouldn’t care.
Gtest plays OK with Cmake fetch content these days, so as long as you are connected when you first build, you are OK. It would be good to support disconnected, though. I just got burnt with that on a different project yesterday, and really need to think about it before Wroclaw.

2 Likes

Based on our discussion during today’s (Sep. 23, 2024) meeting, I’ve removed the lazy repo. It was decided that we’ll wait for a new proposal for std::task given that we have std::execution (P2300) in the working draft.

1 Like

Has anyone committed to bringing a new task/lazy/meow proposal yet?

If I understood correctly, there is one in the works by the authors of P1056.

1 Like