Page 9 of 19 FirstFirst ... 7891011 ... LastLast
Results 81 to 90 of 182

Thread: Mono Developers Go Bye-Bye From Attachmate

  1. #81
    Join Date
    Oct 2007
    Location
    Under the bridge
    Posts
    2,149

    Default

    Quote Originally Posted by Znurre View Post
    As for the syntax I am not quite sure what you are referring to, but there are at least a lot of things I miss in the C# syntax:
    [LIST][*]Pointers
    C# has pointers.
    [*]Being able to treat a pointer as an int (0 or >0) to test whether it's valid or not.
    Code:
    if (pointer)
    vs if (pointer != null)[/code]? That's a tiny difference at best (and in fact our company's C++ coding guidelines request that we avoid the first for clarity).

    [*]Separate header and source files
    This is by far the worst problem in C and C++, i.e. the lack of a real module system. How could you possibly prefer writing the same code *twice* in order to achieve anything?

    Besides, have you ever written cross-platform C/C++ headers? I have and the amount of platform-specific hacks necessary is ridiculous (this was a C++ OpenGL header with proper namespaces, enums etc).

    I am just waiting for C++0x to make its debut, to improve the C++ syntax further.
    Aren't we all? Btw it's called C++1x now.

  2. #82
    Join Date
    Oct 2007
    Location
    Under the bridge
    Posts
    2,149

    Default

    Quote Originally Posted by kraftman View Post
    Oh, what makes 'us' the hypocrites? We're not saying we love Linux, so we code in mono. I'm saying f*ck you ms and I don't touch their c#. How this makes me a hypocrite?
    Because your arguments are not internally consistent.

    First, you say use Java instead of Mono when Java is backed by a significantly worse company as far as open-source is concerned: Oracle.

    Second, you say that we (the open-source world) doesn't need C#. This is inconsistent with the meaning of Free Software and by saying this, you prove that you do not support Free software at all - even though you claim you do.

    Third, you celebrate when open-source developers lose their jobs. Great, now they will finally get the chance to work for some closed-source, windows-only company. Happy?

    Want more?

  3. #83
    Join Date
    Oct 2010
    Posts
    62

    Default

    Quote Originally Posted by BlackStar View Post
    C# has pointers.
    Of course I know this, but I was referring to the syntax.
    In C# you never choose whetver you want to pass something by reference or value, correct me if I am wrong but the ref "operator" seems to be only for decoration.
    At least I really like the strict syntax of C++ with pointers, references etc.

  4. #84
    Join Date
    Apr 2010
    Posts
    1,946

    Default

    Quote Originally Posted by BlackStar View Post
    Great, now they will finally get the chance to work for some closed-source, windows-only company. Happy?

    Want more?
    Ha, getting reassigned within same company is not big deal.

  5. #85
    Join Date
    Oct 2007
    Location
    Under the bridge
    Posts
    2,149

    Default

    Quote Originally Posted by Znurre View Post
    Of course I know this, but I was referring to the syntax.
    In C# you never choose whetver you want to pass something by reference or value, correct me if I am wrong but the ref "operator" seems to be only for decoration.
    Actually, that's incorrect:

    Code:
    class Test
    {
        void Foo(int i) { i = 5; }
        void Bar(ref int i) { i = 10; }
        public static void Main()
        {
            int i = 0;
            Foo(i);
            Console.WriteLine(i);
            Bar(ref i);
            Console.WriteLine(i);
        }
    }
    The reason for the confusion is that in C# (like in Java) class are reference types (C#, unlike Java, also provides value types, i.e. structs), so you can pass a reference type by value (default) or by reference (ref/out keywords). There is a subtle - but important! - distinction between the two: in the first case, if you assign null to the parameter inside the function, this won't be reflected outside the function; in the second case, the change will affect the parameter outside the function, too. (The same thing would happen if you assigned a new instance).

    At least I really like the strict syntax of C++ with pointers, references etc.
    I feel that C++ references leave a lot to be desired. They cannot be reseated (i.e. once you assign a reference to a variable, it is an error to reassign that variable), they cannot be stored in vectors or standard containers (due to the above) and they are silent and deadly. For instance this:
    Code:
    int i = 0;
    Foo(i);
    what's the value of i after the call? In C++ you cannot know, leading to hard-to-find bugs. In C# you know it will be 0.

    At least with pointers, you have the distinction between Foo(i) and Foo(&i), telling you everything you need to know at a glance.

    In short, C# is better-design than C++, simply because it takes the experience we gained with C++ (and Java, Delphi and various) and distills it into something with fewer pitfalls and corner-cases.

  6. #86
    Join Date
    Oct 2007
    Location
    Under the bridge
    Posts
    2,149

    Default

    Quote Originally Posted by crazycheese View Post
    Ha, getting reassigned within same company is not big deal.
    Those people aren't getting reassigned. They are getting laid off. As in, "off you go and thanks for all the fish".

    Besides, Novell doesn't exist anymore. This *is* a different company, Attachmate, that offers "Windows 7 optimized solutions" (from their website) and whose base of operations is in a different country (Germany). That's quite a big freaking deal.

  7. #87
    Join Date
    Oct 2010
    Posts
    62

    Default

    Quote Originally Posted by BlackStar View Post
    What's the value of i after the call? In C++ you cannot know, leading to hard-to-find bugs. In C# you know it will be 0.
    Well, just look at the method definition and you see that it would take either int &i or int i.
    It's really the same as out/ref in C#, except that the syntax (imo.) is cleaner ^^

  8. #88
    Join Date
    Apr 2010
    Posts
    271

    Default

    Quote Originally Posted by Znurre View Post
    Well, just look at the method definition and you see that it would take either int &i or int i.
    It's really the same as out/ref in C#, except that the syntax (imo.) is cleaner ^^
    I would argue that having a cleaner syntax makes it better.

    In any case, passing by ref and objects with out parameters usually means someone doesn't "get" OOP. You normally see people complain about them when they try to write C code in C#. But for those who need them, they are there, unlike Java.

  9. #89

    Default

    Quote Originally Posted by BlackStar View Post
    Because your arguments are not internally consistent.
    Let's check.

    First, you say use Java instead of Mono when Java is backed by a significantly worse company as far as open-source is concerned: Oracle.
    I prefer Qt over java, but I prefer Java over Mono. Java is backed by a significantly better company compared to MS, because Oracle supports Linux in some way. MS wants to tax or kill Linux and they don't support it. While both companies are bad in general to Open Source, Oracle doesn't compete with Linux on desktops.

    Second, you say that we (the open-source world) doesn't need C#. This is inconsistent with the meaning of Free Software and by saying this, you prove that you do not support Free software at all - even though you claim you do.
    Nice playing, but stupid arguments. By supporting C# you do not support Free Software at all. The essence of FLOSS is GPL and GPL is here to not support competitiors. Using C# you do support the biggest FLOSS competitor. By using C# over Qt or other Free Software friendly languages you prove you do not support FLOSS at all.

    Third, you celebrate when open-source developers lose their jobs. Great, now they will finally get the chance to work for some closed-source, windows-only company. Happy?
    Open Source != FLOSS. When open source developers support competitors (like bsd, mono folks) then I'm happy when it ends.

    Want more?
    Of course. I can't wait to read some other revelations, but give some proofs this time.

  10. #90
    Join Date
    Mar 2009
    Location
    Hellas
    Posts
    1,109

    Default

    Quote Originally Posted by wswartzendruber View Post
    Are you guys for real? I, for one, liked the option of having a C# compiler on Linux.
    While options is a good thing, this is not a big deal. Better to use the resources and manpower to other more viable projects. There are hundreds of them.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •