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; 10-18-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


                      • #41
                        Originally posted by JS987 View Post
                        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.
                        You would always need to drop down to the insecure version for at least some parts of the kernel. Real hardware always means you'll have to deal with the nasty bits. You will decide how memory gets handled, and this means you get the chance to f*ck up things. So, this "security over performance" only fully exists in the high level world. That's why Windows drivers now get most of the driver code in user land, only interfacing a small bit in the kernel: because the kernel bits will always be unsafe.

                        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.
                        The piece you quoted is the one making me think that's his main reason. And I agree with you.

                        Bug in library isn't language problem. Bugs exist also in C libraries and kernel.
                        Well, the STL is considered part of the standard C++. In fact, one of the main arguments to use C++ when someone states it's better than C is that it comes with better libraries. Boost should be out of picture, even though it's widely used it shouldn't be considered part of the language.

                        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.
                        You should acknowledge that changing the object model conceptually changes everything depending on it. Changing a function is more tied to implementation, and that kind of refactoring is way easier than rethinking the whole concept. Anyway, it's still developer's fault.

                        Originally posted by dee. View Post
                        Based on there not being a better one. And You Do Not Recall Correctly.
                        Yeah, that's a hell of a reason... It's almost as technical as Canonical's reasons to make another display server.

                        Comment


                        • #42
                          Originally posted by mrugiero View Post
                          Yeah, that's a hell of a reason...
                          Why, do you think there is a better one? What is it?

                          Comment


                          • #43
                            Originally posted by dee. View Post
                            Why, do you think there is a better one? What is it?
                            No, I think that using your thesis as an argument for the thesis is a bit dogmatic.
                            My preference is C for almost anything, if you want to know. But I acknowledge it's just that I'm more used to that language than any pragmatic truth.

                            Comment


                            • #44
                              Originally posted by mrugiero View Post
                              No, I think that using your thesis as an argument for the thesis is a bit dogmatic.
                              My preference is C for almost anything, if you want to know. But I acknowledge it's just that I'm more used to that language than any pragmatic truth.
                              No, I'm not using anything as an argument. Why should I make an argument to defend my initial thesis if there's nothing to challenge the initial thesis? If you say you don't know of any language that is better than C for developing kernels, then it's pointless to argue about it. Even more pointless than the baseline pointlessness of internet arguments in general.

                              Comment


                              • #45
                                Originally posted by jan1024188 View Post
                                If thats the case, than Ubuntu is just pointless. It soon (2-3 years) will be just another obsolete/crappy distro, we should encourage people to switch to other, better distros for desktop than.
                                Ubuntu is obsolete now other distro's like openSUSE and Fedora are 2x better than Ubuntu and 99% of ubuntu releases have been buggy laggy bloated and now it has keyloggers preinstalled also the 9mo's of support in Ubuntu is really lame is you look at openSUSE it has 18 mo's of support and Fedora has 12 or 13mo's of support also Fedora has the newest stabe Kernels and graphics stack

                                Comment

                                Working...
                                X