Announcement

Collapse
No announcement yet.

Will Mir Come On The Ubuntu 14.04 Desktop?

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

  • #31
    Originally posted by silix View Post
    the one thing Linux being written in C does NOT tell, is C is the only possible language for kernel development - inferring so is a fallacy
    No, but it is the best one for it.

    Comment


    • #32
      Originally posted by ciplogic View Post
      - most of big game engines are C++
      This one is moot, since that might have a lot more to do with the fact C++ code is more manageable than with performance. This does imply that if there is a performance drawback, it's low enough for a big project to live with it.

      "Infrastructure software needs more stringent correctness, reliability, efficiency, and maintainability requirements than nonessential applications. " - Bjarne Stroustrup
      This is also related to what I quoted before.

      Comment


      • #33
        Originally posted by dee. View Post
        No, but it is the best one for it.
        Based on what? IIRC, Linus point wasn't about the language itself, but because he considered C++ programmers sloppy.

        Comment


        • #34
          Originally posted by mrugiero View Post
          They still need to get to know the code base.
          IMO, C++ used right leads to simpler code, which means newbies get to know the code base faster. It just requires they learn C++, which is harder to learn than C. But afterwards, reading C++ becomes easier than reading C, I think.
          In that case, write everything with D, whose one of the main goals is readability. Newbies shouldn't have many issues with it.

          Comment


          • #35
            Originally posted by GreatEmerald View Post
            In that case, write everything with D, whose one of the main goals is readability. Newbies shouldn't have many issues with it.
            I'm not against it, either. All three of the languages are at least somewhat compatible with low level programming. That says nothing about which is better, though.

            Comment


            • #36
              Originally posted by dee. View Post
              It's also possible to pick your nose with your dick, but that doesn't mean it's necessarily a good idea.
              Is that right after Mir comes on your desktop, or before?

              Comment


              • #37
                Originally posted by mrugiero View Post
                Based on what? IIRC, Linus point wasn't about the language itself, but because he considered C++ programmers sloppy.
                Based on there not being a better one. And You Do Not Recall Correctly.

                In fact, in Linux we did try C++ once already, back in 1992.

                It sucks. Trust me - writing kernel code in C++ is a BLOODY STUPID IDEA.

                Comment


                • #38
                  Originally posted by dee. View Post
                  Based on there not being a better one. And You Do Not Recall Correctly.
                  Yes, but even it would prove that in 1992 was not possible, as far as I know, C++ have some upgrades in between, like: C++98, C++03, C++ 11.

                  In 1992 was not standardized and the implementations were not the ones that are today.

                  Some people moved from C to C++ like:
                  - John Carmack with Doom 3 and stating that they want to have a safe subset of C++ for their future scripting engine SuperScript
                  - GCC and LLVM projects
                  Some of them were slow even they were written in C (I'm talking about Mono) and they were (if not ever are right now) slower than .Net written in C++. To improve performance, Mono relies on a C++ component (LLVM).

                  Not being able to write your kernel in C, and find int disadvantageous, can be understood, but stating that high performance is not possible in C++ is weird to say it nicely.

                  Even if I would agree that C++ is slower in real life (by few percent), don't forget that writing assembly will give always better code than C. I look into Gnome world and performance of C folks is not taken for granted and people want more safety: Gtk+ 3 disallow direct access to structures making to be called through functions, and more vibrant projects are written in Vala for performance, so even if Vala gives some inefficiencies, are less important than maintainability of the big projects that we face in the 21st century.

                  Comment


                  • #39
                    Originally posted by blackout23 View Post
                    http://harmful.cat-v.org/software/c++/linus
                    If Torvalds says C++ is horrible there is probably some truth to it. He has more knowledge and achived more than all of the users on phoronix.com combined.
                    I meant C++ isn't worse option than C for display server.
                    Torvalds didn't provide any proofs that C++ is worse than C. Some language which prefer security over performance should be used for kernel. Many security bugs in applications written in C wouldn't exist if code would be written in different language.

                    C++ is a horrible language. It's made more horrible by the fact that a lot
                    of substandard programmers use it, to the point where it's much much
                    easier to generate total and utter crap with it. Quite frankly, even if
                    the choice of C were to do *nothing* but keep the C++ programmers out,
                    that in itself would be a huge reason to use C.
                    Incompetent programmers can use any language. There are also many substandard C programmers according to list of existing and fixed bugs in various software written in C.

                    C++ leads to really really bad design choices. You invariably start using
                    the "nice" library features of the language like STL and Boost and other
                    total and utter crap, that may "help" you program, but causes:

                    - infinite amounts of pain when they don't work (and anybody who tells me
                    that STL and especially Boost are stable and portable is just so full
                    of BS that it's not even funny)
                    Bug in library isn't language problem. Bugs exist also in C libraries and kernel.

                    - inefficient abstracted programming models where two years down the road
                    you notice that some abstraction wasn't very efficient, but now all
                    your code depends on all the nice object models around it, and you
                    cannot fix it without rewriting your app.
                    This is developer's fault. Something similar happens also with kernel, when driver which works with e.g. 3.10, doesn't work unmodified with 3.11.

                    In other words, the only way to do good, efficient, and system-level and
                    portable C++ ends up to limit yourself to all the things that are
                    basically available in C. And limiting your project to C means that people
                    don't screw that up, and also means that you get a lot of programmers that
                    do actually understand low-level issues and don't screw things up with any
                    idiotic "object model" crap.
                    It isn't usually problem of C++ language if C++ application doesn't work as expected.
                    Your object model can be crap if project developers are incompetent.

                    It sucks. Trust me - writing kernel code in C++ is a BLOODY STUPID IDEA.
                    (more lines)
                    This is opinion without proof.
                    Last edited by JS987; 18 October 2013, 03:09 PM.

                    Comment


                    • #40
                      Originally posted by mrugiero View Post
                      I'm not against it, either. All three of the languages are at least somewhat compatible with low level programming. That says nothing about which is better, though.
                      Agreed.

                      Also, man is this off-topic, and the tangent was caused by a troll post, no less.

                      Comment

                      Working...
                      X