3 ms·
Being smart is not equivalent to "know the locations of a zillion and one hidden land mines". C and C++ were weird at the beginning and their median user was s
by jokethrowaway 5y ago
Being smart is not equivalent to "know the locations of a zillion and one hidden land mines".
C and C++ were weird at the beginning and their median user was smart. They just become so mainstream that, for many, programming is programming in C-like languages.
The majority of developers nowadays won't find new concepts, new ways of thinking by picking up C or C++, they're likely to have met those concepts already.
If the majority of developers picked up Lisp or Haskell, they would likely discover new ways of thinking.
This is changing, because popular features, abstractions and ways of thinking are trickling down from Lisp and Haskell to more mainstream languages.
- lisper 5y ago> Being smart is not equivalent to "know the locations of a zillion and one hidden land mines". That's right, and I never said they were equivalent. But I think being smart is a prerequisite to navigating C++. > If the majority of developers picked up Lisp or Haskell, they would likely discover new ways of thinking. Yes, I agree. But the problem is that the weird-language-with-smart-users heuristic is as likely to lead one to Nock and Hoon as it is to Lisp and Haskell, and I don't believe that you will discover new ways of thinking in the former. What you will discover (though it may take you a lifetime to realize this) is complex obfuscations of simple ideas that were discovered long ago.
- Ericson2314 5y agoBy the time you finish navigating C++, you have no smarts left over :D. Now, when I first modified Nix I saw some surprisingly readable C++, but this was all performance non-critical code where C++ wasn't needed. In situations where the use of C++ is actually justified, the weirdest is much more pronounced, and the cognative burden much worse. Definitely agree Urbit is a trap, though.
- caslon 5y agoC and C++ were never weird. In fact, C was criticized when it was new for being a "baby" version of better languages. Their median user was intentionally not smart; it aimed for an entirely different demographic of user, the common person.
- TchoBeer 5y agoWasn't C designed to be used in Unix as a successor to B?
- jstanley 5y ago> The majority of developers nowadays won't find new concepts, new ways of thinking by picking up C or C++ Maybe, but at a minimum pointer arithmetic would appear to be an exception.