Announcement

Collapse
No announcement yet.

GCC 9.1 Released As Huge Compiler Update With D Language, Zen 2, OpenMP 5, C++2A, C2X

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #51
    Originally posted by Ironmask View Post
    I have to say, I am pretty impressed the D team managed to make a language that bypasses all know laws of the universal continuum to make a language that can never age. I wonder if the D stands for Dracula.
    And what do dumb people say to avoid learning something new? They say it's old! It's a timeless excuse, which gets passed on from one dumb person to another dumb person so both can stay blissfully dumb. That, too, is impressive in a way.

    And while you're fighting for your right to stay dumb are you making yourself look stupid, because people actually update language specifications and work to keep a language from ageing. Of course did you know this, but you somehow missed it and now you're looking old ... or dumb.
    Last edited by sdack; 06 May 2019, 02:31 PM.

    Comment


    • #52
      Originally posted by sdack View Post
      And what do dumb people say to avoid learning something new? They say it's old!

      It's an excuse that never gets old.
      So if you rebrand it as new then people will learn it?

      That's very clever of you. I have several questions and concerns about that marketing tactic, but I'll withhold them. You're much wiser than I, and I concede to your intellectual might.

      Comment


      • #53
        Originally posted by Ironmask View Post
        So if you rebrand it as new then people will learn it?
        You won't learn anything as long as you keep thinking it's old. Even when you must have figured out by now that if you were to learn something then that makes it new to you and that you only thought it was old.

        It's not me who is rebranding it, but it's your own brain doing the rebranding once you realise that what you're learning is actually new.

        But if all you choose to learn is that something got rebranded then you didn't learn anything new. Even when you think the act of rebranding was the new thing to learn would you rather choose to believe that rebranding itself is old. And all because you want to stay dumb.
        Last edited by sdack; 06 May 2019, 02:56 PM.

        Comment


        • #54
          Originally posted by sdack View Post
          You won't learn anything as long as you keep thinking it's old. Even when you must have figured out by now that if you were to learn something then that makes it new to you and that you only thought it was old.

          It's not me who is rebranding it, but it's your own brain doing the rebranding once you realise that what you're learning is actually new.

          But if all you choose to learn is that something got rebranded then you didn't learn anything new. Even when you think the act of rebranding was the new thing to learn would you rather choose to believe that rebranding itself is old. And all because you want to stay dumb.
          I see! You're quite intelligence and wise in this regard, I've never thought about this before.

          So, the other day I learned about this really cool therapeutic method called Blood Letting...

          Comment


          • #55
            Originally posted by Ironmask View Post
            So, the other day I learned about this really cool therapeutic method called Blood Letting...
            No, you didn't.

            There is a difference between knowing something and knowing about something. Knowing something is new or old still doesn't mean you know it. All you did was to put a label on it and it's the label you know about, but you don't know actually what it is.

            You then probably don't think of giving blood (which saves many lifes) as blood letting. Rather do you see blood letting as something completely different, because you've labelled it completely different than blood transfusions. It's however pretty much the same thing for your body, or the nurse who's draining you. So much for your attempt in sarcasm.

            Comment


            • #56
              Originally posted by sdack View Post
              You won't learn anything as long as you keep thinking it's old. Even when you must have figured out by now that if you were to learn something then that makes it new to you and that you only thought it was old.
              The problem with D is not that it's old. It's the fact that it merely fixes few quirks that are really non-problems in C/C++. The major features are also pretty weak compared to modern languages such as Rust. A mediocre, conservative GC won't really beat the borrow checker in any practical use case. D has a really shitty GC compared to even the free / open C# / Java / JavaScript collectors. It doesn't have nice type system features for controlling the resources such as linear or affine types.

              Did you know the first major selling point of D (design by contract) was already widely popularized by Eiffel? The only downside was, the contract inheritance in D was broken for years until late 2000. There were even Java annotation libraries that implemented the same feature without the bugs. Later, it turned out contracts can't really prove anything and what they do is merely support CI / TDD from a different angle, but won't replace or improve the established work flow. So, while contracts are nice to have, the industry doesn't agree the benefits outweigh the costs. This explains why contract programming is not widely used anywhere. The D's integrated unit testing is a joke compared to production systems such as JUnit 5.

              The second big feature of D are the macros. D's macros are by and large textual and instantiated in a problematic context. For example, they use textual macros as lambdas for basic filters etc. But due to this macro expansion the context is all wrong and your expressiveness is badly limited. This is all too silly since modern compilers can optimize such lambdas quite easily without any additional runtime costs. The language is also enormous, which means the macro engine needs to interpret a huge set of language features, which is totally uncool and not future proof. But it won't include modern macro system features such as quasi-quoting, proper hygiene, improved multi-staged type systems etc. Ugh..

              D also has some improved lambdas, template meta-programming features, and constexprs. Too bad C++ got them too. The C++ development process is again going strong and about to bring a slew of new features in the coming standards such as the module system. It's pretty obvious that the D language is still a one man show and won't revolutionize anything. They should just give up. Nowadays, we don't need GCJ nor Vala either. So why D?

              Comment


              • #57
                Originally posted by caligula View Post
                They should just give up. Nowadays, we don't need GCJ nor Vala either. So why D?
                For the same reason it has you. There are 7 billion people on this planet. Why does it need you? Your mom should have just given up...

                You sure aren't the sunshine, but we love you, too. Some people don't want everything.

                Comment

                Working...
                X