4 ms·
The website used to call it a programming language, but I assume you think that when the website stopped calling it a programming language that it turned into j
by cmeacham98 4y ago
The website used to call it a programming language, but I assume you think that when the website stopped calling it a programming language that it turned into just a compiler?
Regardless, this discussion is actually irrelevant. I later found out (and linked to here: https://news.ycombinator.com/item?id=33548314 https://news.ycombinator.com/item?id=33548314) that Circle isn't even regularly ""censored"" on /r/cpp.
Although, for the record, I would be ok if the mods removed all Circle-related posts on /r/cpp for the reasons I stated above, but no point in discussing that as it isn't even what's happening.
In reality, this was a single post with a misleading title, but Circle's author is apparently desperately looking for any opportunity to play the victim.
- bheadmaster 4y agoQuoting the relevant part of the Tweet linked: Third, the main catalyst for this entire discussion is the title. Someone posted your tweet with the title "C++ type erasure aka traits object", which is misleading as it's not about C++. People reported it, a moderator looked at it, and removed the post. So the mod didn't communicate the reasons for removal properly. It wasn't removed for being off-topic, it was removed for having a misleading title. > In reality, this was a single post with a misleading title, but Circle's author is apparently desperately looking for any opportunity to play the victim. The mod's at fault here, 100%, for communicating wrong information. I'd react the same if I was told that my C++ compiler is "off topic" in a place created for discussion of C++, where various other dialects and extensions to C++ are also discussed on a regular basis. --- Replying to previous arguments for completeness: > I assume you think that when the website stopped calling it a programming language that it turned into just a compiler? No, I think that what someone calls it doesn't make any difference on what it is. If you call it a Java compiler, it doesn't magically become a Java compiler. Each compiler de-facto defines its own "language" - the set of strings it accepts as valid input. The question is just whether or not the set of strings Circle accepts can be called C++ if it has extensions. My argument is that there isn't a clear distinction - but it is a C++ compiler, since it accepts C++. The same way GNU C++ compiler is a C++ compiler since it accepts C++, regardless of various GNU extensions that it also accepts. It is a dishonest take to call it a "completely different language", since that would imply that it has nothing to do with C++ - when it actually has plenty.
- cmeacham98 4y agoThe mod's post makes it pretty clear the primary reason for the removal is that the tweet (and reddit post title) implies the features are coming to C++, while in reality they're an extension actually coming to OP's compiler. That said, I think there's some nuance between GCC's extensions and Circle's extensions. GCC extensions are like "return the minimum of two numbers" (https://web.mit.edu/rhel-doc/3/rhel-gcc-en-3/c---extensions.html https://web.mit.edu/rhel-doc/3/rhel-gcc-en-3/c---extensions....), while Circle's extensions are more like "reflection in C++" (https://github.com/seanbaxter/circle/blob/master/reflection/README.md#circle-reflection-and-typed-enums https://github.com/seanbaxter/circle/blob/master/reflection/...). GCC works with the existing C++ community and standards committees, while Circle's extensions are just the author implementing whatever random features they want. We can disagree about exactly where the line is when Circle diverges enough from C++ it deserves to be called a separate language rather than just a compiler extension. And maybe you think it hasn't crossed that line yet while I do, but I don't think it's fair to claim it 100% cannot be a different language just because GCC has extensions.
- bheadmaster 4y ago> The mod's post makes it pretty clear the primary reason for the removal is that the tweet (and reddit post title) implies the features are coming to C++, while in reality they're an extension actually coming to OP's compiler. The mod used the term "off-topic" - even your explanation states that the removal has nothing to do with the tweet and reddit post title being off-topic, but rather about being misleading. I assume the implications of "off-topic" (implications being that everything related to Circle is off-topic and therefore will be deleted) were what caused the author's reaction. > GCC works with the existing C++ community and standards committees Note that it wasn't always the case. Even with the C compiler, GNU extensions used to be non-standard, until GCC got popular enough for the committee to start caring. Many GNU extensions to C became standard C - but back in the day, they weren't C. Taxonomy of languages is an inherently unclear area with many shades of gray, both with natural and programming languages. > I don't think it's fair to claim it 100% cannot be a different language just because GCC has extensions True, Circle provides significantly more extensions to C++ than GCC. I guess my point is that, in context of the /r/cpp, it's not that off-topic, the same way as discussing Groovy on a Java subreddit would probably not be off-topic - even though Groovy defines a huge number of extensions to the Java language, it's still a derivative of Java and has a lot to do with Java. I simply disagree with that level of puritanism on subreddits.