Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. General talk
  3. The Lounge
  4. Cppfront, Carbon, and Qt
Forum Updated to NodeBB v4.3 + New Features

Cppfront, Carbon, and Qt

Scheduled Pinned Locked Moved Unsolved The Lounge
57 Posts 11 Posters 15.6k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B brainchild

    @Chris-Kawa said in Cppfront, Carbon, and Qt:

    I believe there's just no reason for Carbon. We already have attempts at similar goals, like D or Rust.

    The project objectives are rather different. D attempted to unify the whole gamut of object-oriented programming into a single base language. Rust constructs are quite different from those of C++, so calls across the two languages require complex mappings that are difficult to maintain and often unsafe.

    A legitimate objection to Carbon may be a tendency to express an equivocation between being a new language versus being a new layer for C++. Perhaps such an observation is part of your objection. It may be that the lighter approach offered in Cppfront is helpful for replacing C++ in some contexts, while leaving Rust and other newer languages for development that is more separable from C++.

    You can't separate the work from the man who does it, and looking at his past work I can't ignore the obvious fact that he is (yet again) trying to morph C++ into something I don't appreciate at all.

    I think it is important to keep objections grounded. Perhaps someone has written software I may find useful, but also has adopted a broad range of lifestyle choices or political leanings I find objectionable. Should I avoid using the software? The name of the project reveals its purpose. It's just a front end. Anyone who likes writing C++ code would be free to continue doing so, but I would just as well never have another mind-numbing fight with a C++ build tool chain.

    I guess it would be the first time the box said something different than what the product inside did then :)

    People keep saying cppfront is not a replacement, it's an alternate syntax. I don't believe we need yet another syntax in C++. We already have too much of it and I don't want to deal with both, which is what would end up happening in real existing projects.

    We have too much of what? Alternative syntax for C++? What are other examples of active projects?

    What do you think Cppfront does, substantively, that is wrong?

    As a pure syntax nitpick, how is auto main() -> int(Carbon) or main: () -> int =(cppfront) an improvement over int main()???

    It is a newer style many prefer, but obviously not the reason why either project was conceived. Objecting to either project as such is like objecting to choosing an electric car because of some conventional car being available with different cup holders.

    Chris KawaC Online
    Chris KawaC Online
    Chris Kawa
    Lifetime Qt Champion
    wrote on last edited by Chris Kawa
    #12

    @brainchild said:

    Perhaps someone has written software I may find useful, but also has adopted a broad range of lifestyle choices or political leanings I find objectionable. Should I avoid using the software?

    I would. You don't have to.
    I will avoid those projects. You don't have to.

    The name of the project reveals its purpose.

    The name of the product is a way to sell whatever the authors want. cppfront brings warm fuzzy association with cfront and C++ syntax 2 sounds closer to what you know than C++/CLI for example. You can be ok with the product, that's fine, but please don't give into the pure marketing that is so transparent it's not even funny.

    but I would just as well never have another mind-numbing fight with a C++ build tool chain

    How would cppfront make the toolchains better? It actually makes it worse because it adds to its length.

    We have too much of what? Alternative syntax for C++? What are other examples of active projects?

    I don't mean other projects. I mean within C++ itself. There's couple dozens ways to initialize a variable. We don't need another.

    What do you think Cppfront does, substantively, that is wrong?

    • Markets itself as an alternative. It's not. It's an add-on at best, which complicates systems, not simplifies.
    • Is owned by a single person. Has that ever turned out good?
    • Introduces pointless syntax changes just because, like the main example above.
    • Introduces yet another step in the toolchain. Complicates already complicated ecosystem.
    • Further fragments the already fragmented world of programming languages.
    • Does not have any tooling backing associated with it or plan for it.
    • Since realistically any existing project would hybrid this with C++ the different defaults, depending on which file you're in makes things harder, not simpler.
    • I could go on, but I don't want to. I had this conversation many times already and I'm kinda tired of this topic to be honest.

    Objecting to either project as such is like objecting to choosing an electric car because of some conventional car being available with different cup holders.

    That's just completely random comparison that has nothing to do with the situation. Electric cars or other such technologies are necessary for sustainable future that doesn't rely on carbon (oh, the irony). These projects are not necessary or helpful. C++ can and does evolve. If you want a car analogy it's replacing a brand X for brand Y, because it has nicer headlights but smaller trunk.

    B 1 Reply Last reply
    3
    • Chris KawaC Chris Kawa

      @brainchild said:

      Perhaps someone has written software I may find useful, but also has adopted a broad range of lifestyle choices or political leanings I find objectionable. Should I avoid using the software?

      I would. You don't have to.
      I will avoid those projects. You don't have to.

      The name of the project reveals its purpose.

      The name of the product is a way to sell whatever the authors want. cppfront brings warm fuzzy association with cfront and C++ syntax 2 sounds closer to what you know than C++/CLI for example. You can be ok with the product, that's fine, but please don't give into the pure marketing that is so transparent it's not even funny.

      but I would just as well never have another mind-numbing fight with a C++ build tool chain

      How would cppfront make the toolchains better? It actually makes it worse because it adds to its length.

      We have too much of what? Alternative syntax for C++? What are other examples of active projects?

      I don't mean other projects. I mean within C++ itself. There's couple dozens ways to initialize a variable. We don't need another.

      What do you think Cppfront does, substantively, that is wrong?

      • Markets itself as an alternative. It's not. It's an add-on at best, which complicates systems, not simplifies.
      • Is owned by a single person. Has that ever turned out good?
      • Introduces pointless syntax changes just because, like the main example above.
      • Introduces yet another step in the toolchain. Complicates already complicated ecosystem.
      • Further fragments the already fragmented world of programming languages.
      • Does not have any tooling backing associated with it or plan for it.
      • Since realistically any existing project would hybrid this with C++ the different defaults, depending on which file you're in makes things harder, not simpler.
      • I could go on, but I don't want to. I had this conversation many times already and I'm kinda tired of this topic to be honest.

      Objecting to either project as such is like objecting to choosing an electric car because of some conventional car being available with different cup holders.

      That's just completely random comparison that has nothing to do with the situation. Electric cars or other such technologies are necessary for sustainable future that doesn't rely on carbon (oh, the irony). These projects are not necessary or helpful. C++ can and does evolve. If you want a car analogy it's replacing a brand X for brand Y, because it has nicer headlights but smaller trunk.

      B Offline
      B Offline
      brainchild
      wrote on last edited by brainchild
      #13

      @Chris-Kawa said in Cppfront, Carbon, and Qt:

      Perhaps someone has written software I may find useful, but also has adopted a broad range of lifestyle choices or political leanings I find objectionable. Should I avoid using the software?

      I would. You don't have to.
      I will avoid those projects. You don't have to.

      You won't agree with anyone on everything, but you can still build on each other's work, and respect it. In fact, I doubt anyone has a choice of using tools and ideas created by others with whom one's own interests are not in perfect alignment.

      The name of the project reveals its purpose.

      The name of the product is a way to sell whatever the authors want. cppfront brings warm fuzzy association with cfront and C++ syntax 2 sounds closer to what you know than C++/CLI for example. You can be ok with the product, that's fine, but please don't give into the pure marketing that is so transparent it's not even funny.

      Sure, but I found no evidence of incongruity between the stated and actual objectives.

      but I would just as well never have another mind-numbing fight with a C++ build tool chain

      How would cppfront make the toolchains better? It actually makes it worse because it adds to its length.

      C++ is hard to use. Thoughtless technical mistakes lead to obtuse error message. It is a problem for the language, experienced when the tool chain is invoked.

      We have too much of what? Alternative syntax for C++? What are other examples of active projects?

      I don't mean other projects. I mean within C++ itself. There's couple dozens ways to initialize a variable. We don't need another.

      Right, there are problems with C++ syntax. Why would the observation lead you to object to an alternative?

      What do you think Cppfront does, substantively, that is wrong?

      • Markets itself as an alternative. It's not. It's an add-on at best, which complicates systems, not simplifies.
      • Is owned by a single person. Has that ever turned out good?
      • Introduces pointless syntax changes just because, like the main example above.
      • Introduces yet another step in the toolchain. Complicates already complicated ecosystem.
      • Further fragments the already fragmented world of programming languages.
      • Does not have any tooling backing associated with it or plan for it.
      • Since realistically any existing project would hybrid this with C++ the different defaults, depending on which file you're in makes things harder, not simpler.
      • I could go on, but I don't want to. I had this conversation many times already and I'm kinda tired of this topic to be honest.

      You're plainly just nitpicking. It is a small experiment currently owned by one person trying to prove a concept. Every objection you give has an alternative side.

      That's just completely random comparison that has nothing to do with the situation. Electric cars or other such technologies are necessary for sustainable future that doesn't rely on carbon (oh, the irony). These projects are not necessary or helpful. C++ can and does evolve.

      It is an analogy, of which you have missed the purpose. You may not think the concept of Cppfront adds value, but whether it does broadly is the question, not whether you like every nuance.


      Vala has succeeded as a front end for GObject and GLib. Kotlin has succeeded as an alternative syntax for building Java classes. Whether Cppfront will succeed is an open question, but I fail to see a problem with the concept, especially in light of recent examples of comparable successes.

      Christian EhrlicherC Chris KawaC 2 Replies Last reply
      0
      • B brainchild

        @Chris-Kawa said in Cppfront, Carbon, and Qt:

        Perhaps someone has written software I may find useful, but also has adopted a broad range of lifestyle choices or political leanings I find objectionable. Should I avoid using the software?

        I would. You don't have to.
        I will avoid those projects. You don't have to.

        You won't agree with anyone on everything, but you can still build on each other's work, and respect it. In fact, I doubt anyone has a choice of using tools and ideas created by others with whom one's own interests are not in perfect alignment.

        The name of the project reveals its purpose.

        The name of the product is a way to sell whatever the authors want. cppfront brings warm fuzzy association with cfront and C++ syntax 2 sounds closer to what you know than C++/CLI for example. You can be ok with the product, that's fine, but please don't give into the pure marketing that is so transparent it's not even funny.

        Sure, but I found no evidence of incongruity between the stated and actual objectives.

        but I would just as well never have another mind-numbing fight with a C++ build tool chain

        How would cppfront make the toolchains better? It actually makes it worse because it adds to its length.

        C++ is hard to use. Thoughtless technical mistakes lead to obtuse error message. It is a problem for the language, experienced when the tool chain is invoked.

        We have too much of what? Alternative syntax for C++? What are other examples of active projects?

        I don't mean other projects. I mean within C++ itself. There's couple dozens ways to initialize a variable. We don't need another.

        Right, there are problems with C++ syntax. Why would the observation lead you to object to an alternative?

        What do you think Cppfront does, substantively, that is wrong?

        • Markets itself as an alternative. It's not. It's an add-on at best, which complicates systems, not simplifies.
        • Is owned by a single person. Has that ever turned out good?
        • Introduces pointless syntax changes just because, like the main example above.
        • Introduces yet another step in the toolchain. Complicates already complicated ecosystem.
        • Further fragments the already fragmented world of programming languages.
        • Does not have any tooling backing associated with it or plan for it.
        • Since realistically any existing project would hybrid this with C++ the different defaults, depending on which file you're in makes things harder, not simpler.
        • I could go on, but I don't want to. I had this conversation many times already and I'm kinda tired of this topic to be honest.

        You're plainly just nitpicking. It is a small experiment currently owned by one person trying to prove a concept. Every objection you give has an alternative side.

        That's just completely random comparison that has nothing to do with the situation. Electric cars or other such technologies are necessary for sustainable future that doesn't rely on carbon (oh, the irony). These projects are not necessary or helpful. C++ can and does evolve.

        It is an analogy, of which you have missed the purpose. You may not think the concept of Cppfront adds value, but whether it does broadly is the question, not whether you like every nuance.


        Vala has succeeded as a front end for GObject and GLib. Kotlin has succeeded as an alternative syntax for building Java classes. Whether Cppfront will succeed is an open question, but I fail to see a problem with the concept, especially in light of recent examples of comparable successes.

        Christian EhrlicherC Offline
        Christian EhrlicherC Offline
        Christian Ehrlicher
        Lifetime Qt Champion
        wrote on last edited by
        #14

        @brainchild said in Cppfront, Carbon, and Qt:

        It is a small experiment currently by one person trying to prove a concept. Every objection you give has an alternative side.

        Does anyone have thoughts, hopes, or reservations, about either project informing the future of development with Qt?

        So you really want to tell us that any serious development of this size will switch to a one-man show? Wow...

        Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
        Visit the Qt Academy at https://academy.qt.io/catalog

        B 1 Reply Last reply
        0
        • B brainchild

          @Chris-Kawa said in Cppfront, Carbon, and Qt:

          Perhaps someone has written software I may find useful, but also has adopted a broad range of lifestyle choices or political leanings I find objectionable. Should I avoid using the software?

          I would. You don't have to.
          I will avoid those projects. You don't have to.

          You won't agree with anyone on everything, but you can still build on each other's work, and respect it. In fact, I doubt anyone has a choice of using tools and ideas created by others with whom one's own interests are not in perfect alignment.

          The name of the project reveals its purpose.

          The name of the product is a way to sell whatever the authors want. cppfront brings warm fuzzy association with cfront and C++ syntax 2 sounds closer to what you know than C++/CLI for example. You can be ok with the product, that's fine, but please don't give into the pure marketing that is so transparent it's not even funny.

          Sure, but I found no evidence of incongruity between the stated and actual objectives.

          but I would just as well never have another mind-numbing fight with a C++ build tool chain

          How would cppfront make the toolchains better? It actually makes it worse because it adds to its length.

          C++ is hard to use. Thoughtless technical mistakes lead to obtuse error message. It is a problem for the language, experienced when the tool chain is invoked.

          We have too much of what? Alternative syntax for C++? What are other examples of active projects?

          I don't mean other projects. I mean within C++ itself. There's couple dozens ways to initialize a variable. We don't need another.

          Right, there are problems with C++ syntax. Why would the observation lead you to object to an alternative?

          What do you think Cppfront does, substantively, that is wrong?

          • Markets itself as an alternative. It's not. It's an add-on at best, which complicates systems, not simplifies.
          • Is owned by a single person. Has that ever turned out good?
          • Introduces pointless syntax changes just because, like the main example above.
          • Introduces yet another step in the toolchain. Complicates already complicated ecosystem.
          • Further fragments the already fragmented world of programming languages.
          • Does not have any tooling backing associated with it or plan for it.
          • Since realistically any existing project would hybrid this with C++ the different defaults, depending on which file you're in makes things harder, not simpler.
          • I could go on, but I don't want to. I had this conversation many times already and I'm kinda tired of this topic to be honest.

          You're plainly just nitpicking. It is a small experiment currently owned by one person trying to prove a concept. Every objection you give has an alternative side.

          That's just completely random comparison that has nothing to do with the situation. Electric cars or other such technologies are necessary for sustainable future that doesn't rely on carbon (oh, the irony). These projects are not necessary or helpful. C++ can and does evolve.

          It is an analogy, of which you have missed the purpose. You may not think the concept of Cppfront adds value, but whether it does broadly is the question, not whether you like every nuance.


          Vala has succeeded as a front end for GObject and GLib. Kotlin has succeeded as an alternative syntax for building Java classes. Whether Cppfront will succeed is an open question, but I fail to see a problem with the concept, especially in light of recent examples of comparable successes.

          Chris KawaC Online
          Chris KawaC Online
          Chris Kawa
          Lifetime Qt Champion
          wrote on last edited by
          #15

          @brainchild I mean I could respond to everything you said, but, like I said, I'm kinda tired of being the old guy screaming at clouds, while there's a party around the new shiny thing.

          I'm ok with those things existing. It's not the first time. It's definitely not the last. I see a lot of markers of repeated history that people on with the hype just seem to brush off.

          How about this - lets just wait it out couple years. You'll have your fun with it, then awkwardly fall silent when it fizzles out, and I'll have my fun murmuring "I told you so" to the deaf computer screen. Sounds ok to me.

          B 1 Reply Last reply
          1
          • Christian EhrlicherC Christian Ehrlicher

            @brainchild said in Cppfront, Carbon, and Qt:

            It is a small experiment currently by one person trying to prove a concept. Every objection you give has an alternative side.

            Does anyone have thoughts, hopes, or reservations, about either project informing the future of development with Qt?

            So you really want to tell us that any serious development of this size will switch to a one-man show? Wow...

            B Offline
            B Offline
            brainchild
            wrote on last edited by brainchild
            #16

            @Christian-Ehrlicher said in Cppfront, Carbon, and Qt:

            So you really want to tell us that any serious development of this size will switch to a one-man show? Wow...

            I don't understand your comment.

            I think my suggestion is that the current state of the project is a proof of concept. If it fails to gain interest, then it may never pass to another phase. However, if others are interested, then the scale of the project may expand. Is it not often the case, for many important projects, perhaps C++ itself, of beginning on a small and personal scale?

            Christian EhrlicherC 1 Reply Last reply
            0
            • B brainchild

              @Christian-Ehrlicher said in Cppfront, Carbon, and Qt:

              So you really want to tell us that any serious development of this size will switch to a one-man show? Wow...

              I don't understand your comment.

              I think my suggestion is that the current state of the project is a proof of concept. If it fails to gain interest, then it may never pass to another phase. However, if others are interested, then the scale of the project may expand. Is it not often the case, for many important projects, perhaps C++ itself, of beginning on a small and personal scale?

              Christian EhrlicherC Offline
              Christian EhrlicherC Offline
              Christian Ehrlicher
              Lifetime Qt Champion
              wrote on last edited by
              #17

              @brainchild said in Cppfront, Carbon, and Qt:

              I think my suggestion is that the current state of the project is a proof of concept. If it fails to gain interest, then it may never pass to another phase. However, if others are interested, then the scale of the project may expand. Is it not often the case, for many important projects, perhaps C++ itself, of beginning on a small and personal scale?

              So how does Qt come into play here?

              If you want to try it out - try to compile Qt with it or port it to this and if it's working out in 5 years or so then It may be a valid compiler (or whatever) for Qt.

              Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
              Visit the Qt Academy at https://academy.qt.io/catalog

              B 1 Reply Last reply
              0
              • Chris KawaC Chris Kawa

                @brainchild I mean I could respond to everything you said, but, like I said, I'm kinda tired of being the old guy screaming at clouds, while there's a party around the new shiny thing.

                I'm ok with those things existing. It's not the first time. It's definitely not the last. I see a lot of markers of repeated history that people on with the hype just seem to brush off.

                How about this - lets just wait it out couple years. You'll have your fun with it, then awkwardly fall silent when it fizzles out, and I'll have my fun murmuring "I told you so" to the deaf computer screen. Sounds ok to me.

                B Offline
                B Offline
                brainchild
                wrote on last edited by brainchild
                #18

                @Chris-Kawa I am not predicting success. I believe the future is open. The objections given so far have not seemed compelling. They have seemed to emphasize what the project is not, not what it is.

                I am not aware of any project, ongoing or abandoned, quite like Cppfront, but would be happy to learn of any.

                Chris KawaC JoeCFDJ 2 Replies Last reply
                0
                • B brainchild

                  @Chris-Kawa I am not predicting success. I believe the future is open. The objections given so far have not seemed compelling. They have seemed to emphasize what the project is not, not what it is.

                  I am not aware of any project, ongoing or abandoned, quite like Cppfront, but would be happy to learn of any.

                  Chris KawaC Online
                  Chris KawaC Online
                  Chris Kawa
                  Lifetime Qt Champion
                  wrote on last edited by
                  #19

                  @brainchild Well, for an easy pick look no further than into Herb's past. Find anyone who has to maintain C++ C++/CLI C++/CX UWP hybrids to this day and ask how fun it is to deal with language evolutions that were too shiny to pass on. They were "just a little syntax sugar" too at the start. Just a little ^ here and there. And not even a single man projects. Had all the might and backing of Microsoft, Visual Studio tooling etc. Now they are husks on life support and burden to everyone who jumped on the hype train.

                  B 1 Reply Last reply
                  0
                  • Christian EhrlicherC Christian Ehrlicher

                    @brainchild said in Cppfront, Carbon, and Qt:

                    I think my suggestion is that the current state of the project is a proof of concept. If it fails to gain interest, then it may never pass to another phase. However, if others are interested, then the scale of the project may expand. Is it not often the case, for many important projects, perhaps C++ itself, of beginning on a small and personal scale?

                    So how does Qt come into play here?

                    If you want to try it out - try to compile Qt with it or port it to this and if it's working out in 5 years or so then It may be a valid compiler (or whatever) for Qt.

                    B Offline
                    B Offline
                    brainchild
                    wrote on last edited by
                    #20

                    @Christian-Ehrlicher said in Cppfront, Carbon, and Qt:

                    So how does Qt come into play here?

                    As I stated, Cppfront may help support cleaner and faster development of applications based on the Qt. My view is it might be valuable as an option, though it may never fully replace C++, even for entirely new projects.

                    Carbon may also offer similar benefits, though the project is different.

                    If either fails to gain interest, or if its development stalls, then it will be irrelevant for Qt.

                    1 Reply Last reply
                    0
                    • B brainchild

                      @Chris-Kawa I am not predicting success. I believe the future is open. The objections given so far have not seemed compelling. They have seemed to emphasize what the project is not, not what it is.

                      I am not aware of any project, ongoing or abandoned, quite like Cppfront, but would be happy to learn of any.

                      JoeCFDJ Offline
                      JoeCFDJ Offline
                      JoeCFD
                      wrote on last edited by
                      #21

                      @brainchild if you do research, try anything you like. But you develop products for a long term, @Chris-Kawa is right about sticking to long lasting programming languages.

                      B 1 Reply Last reply
                      0
                      • JoeCFDJ JoeCFD

                        @brainchild if you do research, try anything you like. But you develop products for a long term, @Chris-Kawa is right about sticking to long lasting programming languages.

                        B Offline
                        B Offline
                        brainchild
                        wrote on last edited by brainchild
                        #22

                        @JoeCFD Perhaps you misread my meaning. I am not suggesting beginning a project at this moment written in Cppfront or Carbon. To my knowledge, doing so is not even possible, as neither is complete.

                        I believe C++ is problematic for most development occurring today. Code is slow to write and hard to maintain. I also believe such a view is quite widespread. The idea of a viable front end is compelling, though of course any success is yet to be proved.

                        D, Rust, and Go emerged from a desire to replace C++, but each is a new language in its own right, not one that integrates cleanly into a system already begun in C++.

                        To represent the concept, and its potential, I return to Vala and Kotlin. Most developers prefer the design of more recent languages, all else equal, and C++ is almost singular among programming languages for its verbosity and redundancy.

                        JoeCFDJ Chris KawaC 2 Replies Last reply
                        0
                        • Chris KawaC Chris Kawa

                          @brainchild Well, for an easy pick look no further than into Herb's past. Find anyone who has to maintain C++ C++/CLI C++/CX UWP hybrids to this day and ask how fun it is to deal with language evolutions that were too shiny to pass on. They were "just a little syntax sugar" too at the start. Just a little ^ here and there. And not even a single man projects. Had all the might and backing of Microsoft, Visual Studio tooling etc. Now they are husks on life support and burden to everyone who jumped on the hype train.

                          B Offline
                          B Offline
                          brainchild
                          wrote on last edited by brainchild
                          #23

                          @Chris-Kawa said in Cppfront, Carbon, and Qt:

                          @brainchild Find anyone who has to maintain C++ C++/CLI C++/CX UWP hybrids to this day and ask how fun it is to deal with language evolutions that were too shiny to pass on. They were "just a little syntax sugar" too at the start.

                          Microsoft is notorious for reinventing the wheel, even if it makes one as a hexagon just to be different from a circular one. I think it is not helpful to make comparisons to projects developed by Microsoft.

                          1 Reply Last reply
                          0
                          • B brainchild

                            @JoeCFD Perhaps you misread my meaning. I am not suggesting beginning a project at this moment written in Cppfront or Carbon. To my knowledge, doing so is not even possible, as neither is complete.

                            I believe C++ is problematic for most development occurring today. Code is slow to write and hard to maintain. I also believe such a view is quite widespread. The idea of a viable front end is compelling, though of course any success is yet to be proved.

                            D, Rust, and Go emerged from a desire to replace C++, but each is a new language in its own right, not one that integrates cleanly into a system already begun in C++.

                            To represent the concept, and its potential, I return to Vala and Kotlin. Most developers prefer the design of more recent languages, all else equal, and C++ is almost singular among programming languages for its verbosity and redundancy.

                            JoeCFDJ Offline
                            JoeCFDJ Offline
                            JoeCFD
                            wrote on last edited by
                            #24

                            @brainchild These guys are veterans. Their ideas are accumulated from experiences. Not bad! Have you seen a big company tried to rewrite their code in another language? If you are a manager, better to be careful when you select programming language.

                            B 1 Reply Last reply
                            0
                            • B brainchild

                              @JoeCFD Perhaps you misread my meaning. I am not suggesting beginning a project at this moment written in Cppfront or Carbon. To my knowledge, doing so is not even possible, as neither is complete.

                              I believe C++ is problematic for most development occurring today. Code is slow to write and hard to maintain. I also believe such a view is quite widespread. The idea of a viable front end is compelling, though of course any success is yet to be proved.

                              D, Rust, and Go emerged from a desire to replace C++, but each is a new language in its own right, not one that integrates cleanly into a system already begun in C++.

                              To represent the concept, and its potential, I return to Vala and Kotlin. Most developers prefer the design of more recent languages, all else equal, and C++ is almost singular among programming languages for its verbosity and redundancy.

                              Chris KawaC Online
                              Chris KawaC Online
                              Chris Kawa
                              Lifetime Qt Champion
                              wrote on last edited by Chris Kawa
                              #25

                              @brainchild said:

                              Microsoft is notorious for reinventing the wheel

                              Sutter works at Microsoft and was part of a lot of those wheel reinventions.

                              I think it is not helpful to make comparisons to projects developed by Microsoft

                              Why not? Carbon is Google people, D is Meta people, Rust is Mozilla people... and cppfront is Herb, who is a Microsoft guy. Companies are not some abstract entities. They are made of people. The same people that create those languages.

                              Most developers prefer the design of more recent languages

                              That's kinda bold statement. Can you back it up?

                              C++ is almost singular among programming languages for its verbosity and redundancy

                              Yes and it is evolving to simplify. See modules or even a modern hello world:

                              import std;
                              int main() {
                                  print("Hello world\n");
                              }
                              

                              That's not the same C++ you would write in '83. Got rid of preprocessor, include order problems, verbosity of streams, improved compile times etc. And those simplifications didn't require new language or new tools. Just hard work on existing.

                              1 Reply Last reply
                              0
                              • JoeCFDJ JoeCFD

                                @brainchild These guys are veterans. Their ideas are accumulated from experiences. Not bad! Have you seen a big company tried to rewrite their code in another language? If you are a manager, better to be careful when you select programming language.

                                B Offline
                                B Offline
                                brainchild
                                wrote on last edited by brainchild
                                #26

                                @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                Sutter works at Microsoft and was part of a lot of those wheel reinventions.

                                I think it is not helpful to make comparisons to projects developed by Microsoft

                                Why not? Carbon is Google people, D is Meta people, Rust is Mozilla people... and cppfront is Herb, who is a Microsoft guy. Companies are not some abstract entities. They are made of people. The same people that create those languages.'

                                Companies are made of people, and carry a further abstraction through history, culture, and convention that transcends any single person. If I worked at Microsoft, then surely I would work in a way different from how I would work at another company, or by myself, and surely any mistakes in my work, whether by my choice or another's, would be learning experiences.

                                Most developers prefer the design of more recent languages

                                That's kinda bold statement. Can you back it up?

                                Developers adopt newer languages because newer ones tend to resolve the problems of older ones, based on the experience that accumulated toward their creation.

                                C++ is almost singular among programming languages for its verbosity and redundancy

                                Yes and it is evolving to simplify.

                                Yes, but even so, the problematic characterizations remain overall largely the same. We still have a big mess with headers, class names prefixing function names in definitions, and the fake function definitions for templates placed in header files.

                                Chris KawaC 1 Reply Last reply
                                0
                                • B brainchild

                                  @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                  Sutter works at Microsoft and was part of a lot of those wheel reinventions.

                                  I think it is not helpful to make comparisons to projects developed by Microsoft

                                  Why not? Carbon is Google people, D is Meta people, Rust is Mozilla people... and cppfront is Herb, who is a Microsoft guy. Companies are not some abstract entities. They are made of people. The same people that create those languages.'

                                  Companies are made of people, and carry a further abstraction through history, culture, and convention that transcends any single person. If I worked at Microsoft, then surely I would work in a way different from how I would work at another company, or by myself, and surely any mistakes in my work, whether by my choice or another's, would be learning experiences.

                                  Most developers prefer the design of more recent languages

                                  That's kinda bold statement. Can you back it up?

                                  Developers adopt newer languages because newer ones tend to resolve the problems of older ones, based on the experience that accumulated toward their creation.

                                  C++ is almost singular among programming languages for its verbosity and redundancy

                                  Yes and it is evolving to simplify.

                                  Yes, but even so, the problematic characterizations remain overall largely the same. We still have a big mess with headers, class names prefixing function names in definitions, and the fake function definitions for templates placed in header files.

                                  Chris KawaC Online
                                  Chris KawaC Online
                                  Chris Kawa
                                  Lifetime Qt Champion
                                  wrote on last edited by
                                  #27

                                  @brainchild said:

                                  Companies are made of people, and carry a further abstraction

                                  So you're saying we should discard anything we can learn from mistakes of companies because there's no single name to pin them on? That's a weird attitude. I disagree. Big tech companies create big tech we all use every day. That's, by far, the largest pool of experiences to learn from.

                                  Developers adopt newer languages because newer ones tend to resolve the problems of older ones

                                  Not in my experience. The way I've seen it in my career people usually switch because their manager/lead went to a conference or read a LinkedIn post and got the bug. People that do actual work have to deal with the realities of life and the fallout for years - transition, compatibility, tooling woes, growing pains, evolution beyond basic "let's improve syntax" ideas, while those decision makers move on to the new shiny every few months when those problems become too much to handle.

                                  We still have a big mess

                                  Yes, we can't clean everything up in an instant. What's your point? Throw away 40 years of evolution because you don't like class name in front of a method or some other style bit? Seriously? What's next? New language because ; is not optional like in "modern" languages and it confuses Python programmers?

                                  B 1 Reply Last reply
                                  0
                                  • Chris KawaC Chris Kawa

                                    @brainchild said:

                                    Companies are made of people, and carry a further abstraction

                                    So you're saying we should discard anything we can learn from mistakes of companies because there's no single name to pin them on? That's a weird attitude. I disagree. Big tech companies create big tech we all use every day. That's, by far, the largest pool of experiences to learn from.

                                    Developers adopt newer languages because newer ones tend to resolve the problems of older ones

                                    Not in my experience. The way I've seen it in my career people usually switch because their manager/lead went to a conference or read a LinkedIn post and got the bug. People that do actual work have to deal with the realities of life and the fallout for years - transition, compatibility, tooling woes, growing pains, evolution beyond basic "let's improve syntax" ideas, while those decision makers move on to the new shiny every few months when those problems become too much to handle.

                                    We still have a big mess

                                    Yes, we can't clean everything up in an instant. What's your point? Throw away 40 years of evolution because you don't like class name in front of a method or some other style bit? Seriously? What's next? New language because ; is not optional like in "modern" languages and it confuses Python programmers?

                                    B Offline
                                    B Offline
                                    brainchild
                                    wrote on last edited by brainchild
                                    #28

                                    @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                    Companies are made of people, and carry a further abstraction

                                    So you're saying we should discard anything we can learn from mistakes of companies because there's no single name to pin them on? That's a weird attitude. I disagree. Big tech companies create big tech we all use every day. That's, by far, the largest pool of experiences to learn from.

                                    Not even slightly.

                                    I am saying each company has a culture that affects what is done inside of it, separate from the choices or preferences of any single member.

                                    If I worked on a failed project for a company that had a certain culture, I might like the opportunity to try again, free from that culture, and also learning from the mistakes.

                                    Developers adopt newer languages because newer ones tend to resolve the problems of older ones

                                    Not in my experience. The way I've seen it in my career people usually switch because their manager/lead went to a conference or read a LinkedIn post and got the bug. People that do actual work have to deal with the realities of life and the fallout for years - transition, compatibility, tooling woes, growing pains, evolution beyond basic "let's improve syntax" ideas, while those decision makers move on to the new shiny every few months when those problems become too much to handle.

                                    I understand. Some developers may use a language for reasons not one's own. Many developers prefer newer languages, however, for being more elegant and expressive.

                                    We still have a big mess

                                    Yes, we can't clean everything up in an instant. What's your point? Throw away 40 years of evolution because you don't like class name in front of a method or some other style bit? Seriously? What's next? New language because ; is not optional like in "modern" languages and it confuses Python programmers?

                                    My point is we have a mess, and much of that mess is addressed by projects such as Cppfront. Such is largely the reason I personally might like to see it succeed. C++ itself may also address some of the mess in the future, if possible. In either case evolution would be occurring continuously, not discarded.

                                    Christian EhrlicherC 1 Reply Last reply
                                    0
                                    • B brainchild

                                      @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                      Companies are made of people, and carry a further abstraction

                                      So you're saying we should discard anything we can learn from mistakes of companies because there's no single name to pin them on? That's a weird attitude. I disagree. Big tech companies create big tech we all use every day. That's, by far, the largest pool of experiences to learn from.

                                      Not even slightly.

                                      I am saying each company has a culture that affects what is done inside of it, separate from the choices or preferences of any single member.

                                      If I worked on a failed project for a company that had a certain culture, I might like the opportunity to try again, free from that culture, and also learning from the mistakes.

                                      Developers adopt newer languages because newer ones tend to resolve the problems of older ones

                                      Not in my experience. The way I've seen it in my career people usually switch because their manager/lead went to a conference or read a LinkedIn post and got the bug. People that do actual work have to deal with the realities of life and the fallout for years - transition, compatibility, tooling woes, growing pains, evolution beyond basic "let's improve syntax" ideas, while those decision makers move on to the new shiny every few months when those problems become too much to handle.

                                      I understand. Some developers may use a language for reasons not one's own. Many developers prefer newer languages, however, for being more elegant and expressive.

                                      We still have a big mess

                                      Yes, we can't clean everything up in an instant. What's your point? Throw away 40 years of evolution because you don't like class name in front of a method or some other style bit? Seriously? What's next? New language because ; is not optional like in "modern" languages and it confuses Python programmers?

                                      My point is we have a mess, and much of that mess is addressed by projects such as Cppfront. Such is largely the reason I personally might like to see it succeed. C++ itself may also address some of the mess in the future, if possible. In either case evolution would be occurring continuously, not discarded.

                                      Christian EhrlicherC Offline
                                      Christian EhrlicherC Offline
                                      Christian Ehrlicher
                                      Lifetime Qt Champion
                                      wrote on last edited by
                                      #29

                                      @brainchild said in Cppfront, Carbon, and Qt:

                                      Many developers prefer newer languages, however, for being more elegant and expressive.

                                      Did you ever worked in a company which had real projects?
                                      Your sentence may be true for hobby stuff or a very small percentage of companies.
                                      How will you even add a new language in a 20-year old product? Do you really think you can convince the manager that switching to a new shiny programming language will solve all your problems with the old code? Where do you live???

                                      Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                      Visit the Qt Academy at https://academy.qt.io/catalog

                                      1 Reply Last reply
                                      0
                                      • TomZT Offline
                                        TomZT Offline
                                        TomZ
                                        wrote on last edited by TomZ
                                        #30

                                        @brainchild said in Cppfront, Carbon, and Qt:

                                        Two projects recently have emerged

                                        I like to also include Jakt in this list. Not familiar with it myself, but interesting due to the people that are working on it.

                                        @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                        As a pure syntax nitpick, how is auto main() -> int(Carbon) or main: () -> int =(cppfront) an improvement over int main()???

                                        You picked the by far simplest example and the difference is just splitting hairs. Where it becomes more interesting is when (if) this idea of being able to read from left to right always can be applied to much more tricky syntax. (no, not going to repeat the examples here, DYOR).

                                        @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                        Is owned by a single person. Has that ever turned out good?

                                        To be fair, he has Microsoft behind him.

                                        Anyway, Chris may disagree and try to convince people to not innovate. That is his right.

                                        Ironically this topic of C++ transpiled languages got attention the other day because or severe problems in the industry. Problems that at least in part are due to the problems most of those projects are trying to solve. So, I don't care that Chris dislikes one guy and his repo. Or even dislikes Microsoft as a whole. As long as the research is done in the open and the code is available in an appropriate license, then we all benefit.

                                        In the end the industry will use such a transpiled language or it won't. And more choice is good, competition of ideas is good, because then the chance is, usage is going to be more based on merit than on reputation.

                                        To give my 2 cents on the initial question. I think its too early days to consider how this affects Qt or Qt using developers.

                                        ps. first and probably last message on this thread, seems this is a hot topic ;-)

                                        Chris KawaC 1 Reply Last reply
                                        0
                                        • TomZT TomZ

                                          @brainchild said in Cppfront, Carbon, and Qt:

                                          Two projects recently have emerged

                                          I like to also include Jakt in this list. Not familiar with it myself, but interesting due to the people that are working on it.

                                          @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                          As a pure syntax nitpick, how is auto main() -> int(Carbon) or main: () -> int =(cppfront) an improvement over int main()???

                                          You picked the by far simplest example and the difference is just splitting hairs. Where it becomes more interesting is when (if) this idea of being able to read from left to right always can be applied to much more tricky syntax. (no, not going to repeat the examples here, DYOR).

                                          @Chris-Kawa said in Cppfront, Carbon, and Qt:

                                          Is owned by a single person. Has that ever turned out good?

                                          To be fair, he has Microsoft behind him.

                                          Anyway, Chris may disagree and try to convince people to not innovate. That is his right.

                                          Ironically this topic of C++ transpiled languages got attention the other day because or severe problems in the industry. Problems that at least in part are due to the problems most of those projects are trying to solve. So, I don't care that Chris dislikes one guy and his repo. Or even dislikes Microsoft as a whole. As long as the research is done in the open and the code is available in an appropriate license, then we all benefit.

                                          In the end the industry will use such a transpiled language or it won't. And more choice is good, competition of ideas is good, because then the chance is, usage is going to be more based on merit than on reputation.

                                          To give my 2 cents on the initial question. I think its too early days to consider how this affects Qt or Qt using developers.

                                          ps. first and probably last message on this thread, seems this is a hot topic ;-)

                                          Chris KawaC Online
                                          Chris KawaC Online
                                          Chris Kawa
                                          Lifetime Qt Champion
                                          wrote on last edited by Chris Kawa
                                          #31

                                          @TomZ said:

                                          Chris may disagree and try to convince people to not innovate

                                          That's just harmful exaggeration, please don't assume such things. Innovate away, by all means. I'm not against progress. I just don't believe that's it and I don't particularly look forward to cleaning up after this mess (by which I mean work in those hybrid workspaces if they do emerge), but have at it, I'll live.

                                          So, I don't care that Chris dislikes one guy and his repo

                                          I think you did grew to care a little bit, and I appreciate it :) I don't dislike the guy. Like I said in the other thread - he's a great presenter, community builder, facilitates a lot of work that is being done in the C++ space and does a lot of good work educating via blogs and whatnot. I just don't like the direction he's been trying to push C++ for the longest time, or the multitude attempts at replacing it with what I consider destructive processes and lesser options. I think it's misguided, fragmenting and harmful long term. Sure it's cool to play around with, like any tech is to me, but I just don't appreciate all that cheerleading that is currently happening around it. It's just a very limited toy, hyped up to high heavens, not a solution to all problems of C++, like some deem it to be.

                                          I'm not chaining myself to a tree or anything like that. Do whatever you want. You asked about opinions in that other thread so I answered. OP asked the same here so I responded. If you don't want to see me talking about it that's fine. I'm a bit annoyed and tired of the topic anyway, so I probably will shut up if it reappears.

                                          B 1 Reply Last reply
                                          1

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved