My (Herb Sutter's) C++ Now 2023 talk is online: “A TypeScript for C++”

  • From all wannabe C++ replacements candidates, the only language that is really a TypeScript for C++, is Circle.

    For whatever reason, Herb Sutter decided to ignore this language on the presentation.

    https://www.circle-lang.org/

    This is the only one with the syntax based on C++, incrementally changing the features via #pragma settings.

    "Circle Fixes Defects, Makes C++ Language Safer & More Productive"

    https://www.youtube.com/watch?v=x7fxeNqSK2k

    "Circle Evolves C++"

    https://www.youtube.com/watch?v=P1ZDOGDMNLM

  • I watched this entire talk a couple days ago.

    As a life long C++ native Software Engineer, cppfront/cpp2 is one of the few efforts in c++ that interest me these days.

    I am also the hiring manager for our teams, and it's shocking that applicants that proudly include c++20 on their resumes but can not answer the intentionally open-ended question: Tell me about std::move().

    IMO: If c++ is to thrive, it is in desperate need of the "10x simpler and safer" vision that is at the core of cppfront.

  • my issue with C/C++ code bases in 2023, is the same issue from 2013 and 2003: tooling. With Go, I can download any random code from at least 2018, and do this:

        go build
    
    and it just works. all the needed packages are automatically downloaded and built, and fast. same process for Rust and even Python to an extent. my understanding is C++ has never had a process like this, and its up to each developer to streamline this process on their own. if thats no longer the case, I am happy to hear it. I worked on C/C++ code for years, and at least 1/3 of my development time was wasted on tooling and build issues. I dont ever want to deal with that again.

  • Is there a text summary of this? 90 minutes of talking is too much.

  • I kinda feel like this is DOA until modules are more widespread. Any new cppfront code in an existing C++ codebase can't include any existing header files which automatically excludes it from any C++ codebase I've worked on (or any I expect to in the next few years) without a significant amount of developer time spent making the migration to modules-only.

    Would love to try it out though when that happens, I do hope that modules will eventually get mainstream enough to make cppfront viable.

  • Another interesting C++ successor language:

    https://github.com/carbon-language/carbon-lang

  • I still can't use C++20 modules with a macOS app (Clang). I tried, and compile times balloon 10-30x on some files.

    Maybe I should give up and try Rust. Does Rust give you _maximum_ control over performance the way C and C++ do? I need that and that's I why I used C++ in the first place.

  • Since this language is moving further away from C, I suggest they update the name to reflect that: pp.

  • [dead]

  • /r/titlegore

  • An experimental attempt for this already exists

    https://github.com/carbon-language/carbon-lang

    https://compiler-explorer.com/ (pick Carbon)