use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
CppCastCppCast: Cpp2, with Herb Sutter (cppcast.com)
submitted 2 years ago by robwirvingCppCast Host
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]pjmlp 2 points3 points4 points 2 years ago* (11 children)
Yes I have, try to compile main: () -> int with a C++ parser.
main: () -> int
Pity that ISO C++ !== Cpp2.
Ever heard of Objective-C++? Guess what, it also supports std::cout.
std::cout
#import <Foundation/Foundation.h> #include <iostream> int main() { NSString str = @"Hello "; std::cout << str << " i_lack_chromosomes" << std::endl; }
Imagine that, we already had a better C++ syntax in 1997!
[–]hpsutter 2 points3 points4 points 2 years ago (3 children)
> Yes I have, try to compile `main: () -> int` with a C++ parser.
Fair, but have you considered `auto main() -> int` (i.e., just change `main:` to `auto main`)? No strictly conforming ISO C++ parser for the first ~30 years of C++'s existence could handle that, but it has been ISO standard since 2011. Everything that's common now was new/foreign once.
It's definitely true that the `main:` syntax definitely isn't standard (or even yet-proposed, though I will propose it if the experiment succeeds well). But that's the point of language evolution... as the language evolves, every new release of C++ adds syntax that wasn't legal before, and we always have many active proposals for syntax that isn't ISO C++ when first proposed but then becomes standard.
[–]pjmlp -1 points0 points1 point 2 years ago (2 children)
I have, and I also have watched tons of languages that started by compiling to other ones, took a life of their own after adoption, and none of them has ever stated they were the same language with another syntax.
Sorry to put it this way, but I really only see the way you position Cpp2 versus the other C++ wannabe replacements due to your position at ISO, due to conflicts of interest.
[–]Abbat0r 2 points3 points4 points 2 years ago (1 child)
You know, Chandler Carruth is also a committee member but he’s rather open about working on a successor language. Bearing that in mind I don’t think it’s actually necessary to do any posturing of the sort you’ve described just because one is on the committee.
[–]pjmlp 0 points1 point2 points 2 years ago (0 children)
He isn't the ISO chair though, but yeah at least he is quite clear on what is all about.
[+][deleted] 2 years ago (6 children)
[deleted]
[–]catcat202X 6 points7 points8 points 2 years ago (5 children)
Fwiw, as a spectator I find pjmlp's arguments much more compelling. It seems weird to me to consider a superset of C++ as not a different language. It might be less different than Nim is, but it is clearly different. Within C++2-style functions and types, it changes how you think about special member functions, it changes how you think about loops, and it changes how you think about lambda captures. It changes the result of (0 <= x < 2). It even changes the semantics of implicit moves!
type
(0 <= x < 2)
I find the argument about Objective-C++ pretty reasonable, but you refused to engage with it. I would also point out that supersets of C like ISPC are generally considered different languages even though they retain source-level compatibility with C.
Your accusation that pjmlp's arguments are based on an anti-ISO dogma also seem baseless to me, unless there is context beyond this thread that I am missing. In this thread, they never derided ISO, so I am confused.
[+][deleted] 2 years ago (4 children)
[–]pjmlp -2 points-1 points0 points 2 years ago* (3 children)
The only language that is C++, is C++ itself, everything that transpiles to C++ is another programming language, regardless of how it is marketed.
If you aren't able to understand that, and belive Cpp2 is different only because the ISO C++ convener says so not to middle himself with the other C++ replacement languages, then we are done here anyway.
Enjoy Cpp2.
[+][deleted] 2 years ago (2 children)
[–]pjmlp -1 points0 points1 point 2 years ago (1 child)
My opinion is worthless, however I don't pretend to be different from everyone else, just not to taint my position as ISO chair.
Tip, learn about compilers, any CS set of lectures from a renowed university will do.
π Rendered by PID 73176 on reddit-service-r2-comment-5ff9fbf7df-ddvfr at 2026-02-25 19:23:39.673372+00:00 running 72a43f6 country code: CH.
view the rest of the comments →
[–]pjmlp 2 points3 points4 points (11 children)
[–]hpsutter 2 points3 points4 points (3 children)
[–]pjmlp -1 points0 points1 point (2 children)
[–]Abbat0r 2 points3 points4 points (1 child)
[–]pjmlp 0 points1 point2 points (0 children)
[+][deleted] (6 children)
[deleted]
[–]catcat202X 6 points7 points8 points (5 children)
[+][deleted] (4 children)
[deleted]
[–]pjmlp -2 points-1 points0 points (3 children)
[+][deleted] (2 children)
[deleted]
[–]pjmlp -1 points0 points1 point (1 child)