[HN Gopher] Should we stop writing functions? (C++)
       ___________________________________________________________________
        
       Should we stop writing functions? (C++)
        
       Author : loopinvariant
       Score  : 29 points
       Date   : 2023-08-06 10:56 UTC (12 hours ago)
        
 (HTM) web link (www.foonathan.net)
 (TXT) w3m dump (www.foonathan.net)
        
       | frozenport wrote:
       | Its important to note the article was published on April 1st.
        
         | rewmie wrote:
         | > Its important to note the article was published on April 1st.
         | 
         | Haters don't waste time trying to understand what is before
         | them. They just see a superficial opportunity to unleash hate
         | and just go for it, logic be damned.
        
           | Kranar wrote:
           | Man the irony of your comment... it is in fact you who did
           | not bother to verify that in fact this article was not
           | published on April 1st.
        
         | actuallyalys wrote:
         | Did you post this on the wrong comment thread? Neither this
         | blog post nor the original version at think-cell were published
         | on April 1.
        
         | fortyseven wrote:
         | If by "April 1st" you mean "August 4th", then absolutely. I
         | mean if you say them both fast they kind of sound vaaaaaguely
         | similar...
        
       | djmips wrote:
       | You look throught the positives and you start to go yeah, yeah!
       | But then on the downsides. Ugh, it will make debugging even more
       | ugly? Debugging considerations are one of the last things people
       | tend to think about when 'architecting'.
        
         | yikes_42069 wrote:
         | I always push back on decisions that have benefits with reduced
         | debugability. It's rarely worth the hassle to take on a "more
         | performant" or easier to develop tool if devs can't easily
         | figure out what's wrong with it. Especially in a big company
         | where people move around, and tend not to be familiar with
         | tools...
        
           | Tanjreeve wrote:
           | That's a brave argument I'd rarely make of "We could do this
           | thing with major tangible benefits but our Devs might find it
           | a bit hard"
        
       | garrisonhh wrote:
       | This kind of post is why I do not understand C++ programmers
       | whatsoever. It's basically a demonstration of the absurd amount
       | of time C++ takes away from you by being the moldy pile of shit
       | that it is. You want better compiler checks and less freedom?
       | Great, me too. Can we please shut the fuck up and use a language
       | that actually supports that?
        
         | rewmie wrote:
         | > This kind of post is why I do not understand C++ programmers
         | whatsoever. It's basically a demonstration of the absurd amount
         | of time C++ takes away from you by being the moldy pile of shit
         | that it is.
         | 
         | What? Exactly what led you to think that nonsense? A random
         | blog post of someone misusing lambda expressions?
         | 
         | There are plenty of things in C++ to criticize, but a) you are
         | not actually criticising anything at all and instead spewed
         | just noise b) misusing a feature is not a problem of C++.
        
           | Kranar wrote:
           | This isn't a random blog post and the techniques in the blog
           | are actually used by the standard library and some pretty
           | major C++ libraries such as range-v3 and fmtlib.
           | 
           | The author of the blog post is in fact one of the authors of
           | fmtlib.
           | 
           | Getting libraries to play nicely with ADL is actually a huge
           | pain in the ass and in fact the three major C++ compilers
           | don't agree with one another on how to actually perform name
           | lookup in a large number of cases.
        
         | lionkor wrote:
         | It simply has too many upsides and is way too popular to be
         | replaced with either
         | 
         | - a simpler language that does less
         | 
         | - a less popular language
         | 
         | - a more verbose / restrictive language
         | 
         | If you want people to switch to something better, _make
         | something better_. Its not enough to simply call out the issues
         | (which is valid, but not useful anymore), and it entirely
         | dismisses that replacement languages like D (small, less active
         | ecosystem) and Rust (hugely verbose and equally bloated) do not
         | actually service the entire range of C++ users.
         | 
         | If all the other compilers and languages were THAT much better,
         | they would be used.
         | 
         | For a lot of apps, Rust has been that replacement, but not for
         | all domains C++ is used in.
         | 
         | Why do people still use telephones when calling via whatsapp,
         | telegram, element or discord exists? Why do people still drive
         | shitty motorbikes when electric cars exist? Why do people still
         | write by hand when you can type instead?
         | 
         | Because the replacement is not a complete replacement and does
         | not actually work better for everyone.
        
           | jokteur wrote:
           | I like the idea of Rust, the tooling, the package manager
           | (far more better that what you can find in C++).
           | 
           | What you are saying is true: I've been writing high
           | performance scientific code and desktop gui apps. I would
           | love to use Rust for my projects, but it just doesn't cut it.
           | The libraries I am using are very mature in C++, but the
           | libraries in Rust to accomplish the same thing are still too
           | immature to consider in my projects.
        
       ___________________________________________________________________
       (page generated 2023-08-06 23:02 UTC)