Thanks for the cc's, checking the temperature and buy-in from other team members was indeed one of the reasons I sent out this email.
On Fri, 16 Oct 2020, 20:36 Adam Klein, <[email protected]> wrote: > Making this a cleanup project makes sense (no, I don't have headcount to > allot here), but thanks for making that explicit. Ideally this could be > documented somewhere too. > > This plan sounds reasonable to me (and your base::Optional alias CL > <https://chromium-review.googlesource.com/c/v8/v8/+/2476318> is a nice > proof-of-concept). The other thing implicit in my question was: is there > buy-in for this approach across the various areas in V8? I don't ask that > everyone sign off, but I would like to offer the opportunity for folks to > weigh-in if they have opinions (especially since I suspect not everyone > follows v8-dev@ closely). I've CCed the relevant folks on this thread. > > - Adam > > > On Fri, Oct 16, 2020 at 10:56 AM Leszek Swirski <[email protected]> > wrote: > >> I saw this effectively as a cleanup project, with as much >> staffing/prioritisation as, say, TNodification. If you have spare headcount >> to offer for this I'll gladly take it :) >> >> The end state I would suggest, is to replace all uses of std::*map with >> absl, and try to replace our base::TemplateHashMap with it too, turning the >> former into a thin wrapper over the other. Also, replace any other relevant >> base implementations with equivalent absl ones where applicable, with >> transitional aliases in the base namespace. An example here would be >> base::Optional and a couple of the template traits, like, say, conjunction >> and disjunction. Using aliases and turning existing containers into thin >> wrappers should reduce the binary size impact, and then inlining those >> aliases can be done reasonably ad hoc, or in cleanup Fridays. >> >> How does that sound? >> >> - Leszek >> >> On Fri, 16 Oct 2020, 19:18 Adam Klein, <[email protected]> wrote: >> >>> What's the full transition plan here? We've done several adhoc >>> transitions between different containers in the past, leaving us >>> currently with a mix of hand-rolled and STL containers. While Abseil seems >>> like it has some definite advantages, it seems like it'd be ideal, both for >>> code size reasons and for uniformity across CL authors & reviewers if there >>> was some agreed-upon end state, at least. Ideally there'd even be a >>> staffed, prioritized effort to get us from the current state to some future >>> state. >>> >>> - Adam >>> >>> On Tue, Oct 13, 2020 at 11:46 PM Leszek Swirski <[email protected]> >>> wrote: >>> >>>> Hi all, >>>> >>>> I'm planning on adding Abseil as a dependency in V8, to get rid of some >>>> of our hand-rolled base classes and (hopefully) reap the advantages of >>>> those engineers' work. An example use would be changing our hand-rolled >>>> hashmap to a thin wrapper over absl::flat_hash_map/set: >>>> https://chromium-review.googlesource.com/c/v8/v8/+/2464941 >>>> >>>> This plan is unofficially lgtm'ed by Chromium C++ folks - any >>>> objections from our side? >>>> >>>> Cheers, >>>> Leszek >>>> >>>> -- >>>> -- >>>> v8-dev mailing list >>>> [email protected] >>>> http://groups.google.com/group/v8-dev >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "v8-dev" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/v8-dev/CAGRskv_mgj%2BnH5SHa6m%2Bgsq9U3ZLRwZphzY8zhd_y67jxfbBdg%40mail.gmail.com >>>> <https://groups.google.com/d/msgid/v8-dev/CAGRskv_mgj%2BnH5SHa6m%2Bgsq9U3ZLRwZphzY8zhd_y67jxfbBdg%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>> -- >>> -- >>> v8-dev mailing list >>> [email protected] >>> http://groups.google.com/group/v8-dev >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "v8-dev" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/v8-dev/CAEvLGcKVpUsVH2ifAUzX0wAN2dgYaPDNoVixVW-%2B%2BYZkOT3o7w%40mail.gmail.com >>> <https://groups.google.com/d/msgid/v8-dev/CAEvLGcKVpUsVH2ifAUzX0wAN2dgYaPDNoVixVW-%2B%2BYZkOT3o7w%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- >> -- >> v8-dev mailing list >> [email protected] >> http://groups.google.com/group/v8-dev >> --- >> You received this message because you are subscribed to the Google Groups >> "v8-dev" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/v8-dev/CAGRskv_0835CMHLEfOs_jzgRjHtfj08SCq6JjLWXx0LubKSZfQ%40mail.gmail.com >> <https://groups.google.com/d/msgid/v8-dev/CAGRskv_0835CMHLEfOs_jzgRjHtfj08SCq6JjLWXx0LubKSZfQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> > -- > -- > v8-dev mailing list > [email protected] > http://groups.google.com/group/v8-dev > --- > You received this message because you are subscribed to the Google Groups > "v8-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/v8-dev/CAEvLGc%2BqyeTE21GT-a2qUP5T02Gd8VX%3D92wOc_pC85FaSDLUHQ%40mail.gmail.com > <https://groups.google.com/d/msgid/v8-dev/CAEvLGc%2BqyeTE21GT-a2qUP5T02Gd8VX%3D92wOc_pC85FaSDLUHQ%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-dev/CAGRskv8pdSzZk0DeVQSSutK2Mn%2B0AO_%3DSzX6VwiaEhCO_dPZfg%40mail.gmail.com.
