Live data from Hacker News

Viewing profile — seanbax

seanbax

HN member
Joined
Sat, Oct 16, 2021, 10:47 PM UTC
HN karma
81
Public activity
17 items

About seanbax

No profile information was provided.

Recent public activity

  1. comment
    Comment #45242752

    Lifetime parameters are necessary for borrow checking. And you need a special operator for initiating a borrow. You need immutability by default, because mutability everywhere viol…

  2. comment
    Comment #45240766

    Which ideas aren't strictly necessary to achieve safety in C++?

  3. comment
    Comment #45240708

    template _GLIBCXX20_CONSTEXPR inline void sort(_RandomAccessIterator __first, _RandomAccessIterator __last) { // concept requirements __glibcxx_function_requires(_Mutable_RandomAcc…

  4. comment
    Comment #45239463

    Python doesn't have lvalues in the way that C++ and Rust do. You can't refcount everything and still pass lvalues to subobjects. If lvalues to subobjects are important, you need bo…

  5. comment
    Comment #45239448

    I illustrate why it won't work with a number of examples here: https://www.circle-lang.org/draft-profiles.html To address your points: 1. The safe subset of C++ is too small to do …

  6. comment
    Comment #45239305

    The Profiles authors are the ones claiming this uses local analysis only: https://news.ycombinator.com/item?id=41942126 They are clear that Profiles infers everything from function…

  7. comment
    Comment #45239170

    I would have implemented profiles if profiles had a chance of working. But they will not ever work. I present many examples of why they fail here: https://www.circle-lang.org/draft…

  8. comment
    Comment #41946871

    You do solely rely on the declaration. From P3465: "why this is a scalable compile-time solution, because it requires only function-local analysis" Profiles uses local analysis, as…

  9. comment
    Comment #41946711

    If the vector has to be resized in push_back, the implementation copy-constructs a new object from x. It resizes the buffer. Then it move-constructs the copy into the buffer. The c…

  10. comment
    Comment #41942126

    From P3465: "why this is a scalable compile-time solution, because it requires only function-local analysis" From P1179: "This paper ... shows how to efficiently diagnose many comm…

  11. comment
    Comment #40312959

    Presenting a familiar syntax certainly makes it easier to follow.

  12. comment
    Comment #34509685

    https://itanium-cxx-abi.github.io/cxx-abi/abi.html See all the stuff there? exceptions, vtable layout, rtti, mangling, etc. There's a Windows equivalent for all of that. That's wha…

  13. comment
    Comment #34499112

    Yes, interfaces open that up, and to a lesser extent choice types open that up. If your choice type supports all the alternatives from the original overload set, then you can reduc…

  14. comment
    Comment #34499089

    That's right. I'm fine with normal C++ syntax. But other people have other opinions. And there is an allure of getting to a CFG so that non-compiler tooling could build a parse tre…

  15. comment
    Comment #34499072

    I'd like to target Windows. Windows does impose a specific C++ ABI, but it's completely undocumented. It's really just whatever Visual C++ does. C++ ABI is very complex, especially…

  16. comment
    Comment #28892350

    My favorite use is putting user-defined attributes on data members, and using reflection to generate a UI to manipulate those values. I do it with these shadertoys: https://github.…

  17. comment
    Comment #28892294

    Enum to string is a one-line expression in Circle: https://godbolt.org/z/93f5o77zv Circle has dozens of special traits for accessing useful stuff about types, packs, etc. Don't nee…