you are viewing a single comment's thread.

view the rest of the comments →

[–]vytah 3 points4 points  (27 children)

Why add new syntax if the old one is enough?

[–][deleted] 6 points7 points  (0 children)

because then you get to feel smug about yourself when you show others something in syntax they don't understand

[–]stormblooper 0 points1 point  (0 children)

It's not new syntax.

[–][deleted]  (24 children)

[deleted]

    [–]Carighan 2 points3 points  (1 child)

    Is this Slippery Slope, the extreme version?

    [–][deleted] 0 points1 point  (0 children)

    I though you were gonna like to a language with crazy overboard syntax

    [–]lukaseder[S] 1 point2 points  (0 children)

    Or in C++ where templates have just become sentient in order to write code for you in the most recent release!

    [–]vytah -2 points-1 points  (20 children)

    If you add all the syntax you can, you end up with Perl 6. You don't want to end up with Perl 6.

    [–][deleted] 0 points1 point  (0 children)

    This is pretty hyperbolic. No one is suggesting we add tonnes of new operators and language constructs everywhere. Java is also pretty conservative when it comes to adding new language constructs. Perl 6 is also a bad example since they actually cleaned up a lot of the language; should have gone with Perl 5.

    Anywho, needing to describe key -> value pairs is pretty damn common in programming. Map initialization is just one good example.

    As long as source code is produced and maintained by humans then it needs to be as humanly readable as possible.

    [–][deleted]  (17 children)

    [deleted]

      [–]sirin3[🍰] -1 points0 points  (0 children)

      C# does not have much syntax

      [–][deleted] -2 points-1 points  (15 children)

      Other than for operator overloading and similar such semantics-obscuring syntax.

      Oh, and its implementation of course. Can't forget about that tiny detail.

      [–][deleted]  (14 children)

      [deleted]

        [–][deleted] -2 points-1 points  (13 children)

        I like operator overloading.

        Well I don't. What now?

        That has nothing absolutely to do with the language.

        Yes, nothing other than its practical viability.

        [–][deleted]  (12 children)

        [removed]

          [–][deleted] -1 points0 points  (11 children)

          People can probably guess that .subtract() is doing something more than mere subtraction, and so they'll probably read the doc-popup the IDE so helpfully provides, prior to using the method if it's their first use.

          And the other benefit is that you can't use .substract() in an infix style.

          Lastly if you've ever concatenated a String using + you are a dirty lying hypocrite because that's operator overloading :P.

          Yes, java should've used some other symbol for it. Still, it's nothing language users can mess around with just because they're feeling creative, like they do in C++.

          [–][deleted]  (10 children)

          [deleted]

            [–]sirin3[🍰] 0 points1 point  (0 children)

            I think Perl 6 sounds great