Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Programmer Humor
  3. Modern Programming

Modern Programming

Scheduled Pinned Locked Moved Programmer Humor
programmerhumor
74 Posts 46 Posters 2 Views
  • 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.
  • D [email protected]

    The ternary syntax is really my only real gripe with python design -- putting the conditional BETWEEN the true and false values feels so very messy to me.

    rbos@lemmy.caR This user is from outside of this forum
    rbos@lemmy.caR This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #27

    It's kinda natural to me having used Perl a lot.

    S L 2 Replies Last reply
    12
    • R [email protected]

      Python does that, too.

      https://docs.python.org/3/library/stdtypes.html#boolean-operations-and-or-not

      satyrsack@lemmy.sdf.orgS This user is from outside of this forum
      satyrsack@lemmy.sdf.orgS This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #28

      Are you just referring to how Python uses the English and/or instead of the more common &&/||? I think what the user above you was talking about was Lua's strange ternary syntax using and/or.

      lime@feddit.nuL 1 Reply Last reply
      1
      • kn0wmad1c@programming.devK [email protected]

        Ah that makes sense.

        satyrsack@lemmy.sdf.orgS This user is from outside of this forum
        satyrsack@lemmy.sdf.orgS This user is from outside of this forum
        [email protected]
        wrote on last edited by
        #29

        It doesn't make sense. I understand it, but it doesn't make sense.

        L 1 Reply Last reply
        1
        • entropicdrift@lemmy.sdf.orgE [email protected]

          Python is kinda like that in general, unless you try to make it read like ass

          W This user is from outside of this forum
          W This user is from outside of this forum
          [email protected]
          wrote on last edited by
          #30

          You would not believe the number of people I’ve interviewed who excel at making Python read like ass.

          entropicdrift@lemmy.sdf.orgE 1 Reply Last reply
          4
          • W [email protected]

            You would not believe the number of people I’ve interviewed who excel at making Python read like ass.

            entropicdrift@lemmy.sdf.orgE This user is from outside of this forum
            entropicdrift@lemmy.sdf.orgE This user is from outside of this forum
            [email protected]
            wrote on last edited by
            #31

            I mean, it does have enough ways to write the same thing that it can really allow for some funny code golf, but some people just have no sense of readability whatsoever.

            1 Reply Last reply
            5
            • rbos@lemmy.caR [email protected]

              It's kinda natural to me having used Perl a lot.

              S This user is from outside of this forum
              S This user is from outside of this forum
              [email protected]
              wrote on last edited by
              #32

              That's not quite the argument you might think it is

              rbos@lemmy.caR 1 Reply Last reply
              18
              • S [email protected]

                That's not quite the argument you might think it is

                rbos@lemmy.caR This user is from outside of this forum
                rbos@lemmy.caR This user is from outside of this forum
                [email protected]
                wrote on last edited by
                #33

                Argument?

                S 1 Reply Last reply
                3
                • maven@lemmy.zipM [email protected]
                  This post did not contain any content.
                  mdhughes@lemmy.sdf.orgM This user is from outside of this forum
                  mdhughes@lemmy.sdf.orgM This user is from outside of this forum
                  [email protected]
                  wrote on last edited by
                  #34

                  print( ["even", "odd"][num % 2] )

                  If you need to avoid evaluating the wrong branch:

                  print( [lambda: "even", lambda: "odd"][num % 2]() )

                  1 Reply Last reply
                  36
                  • maven@lemmy.zipM [email protected]
                    This post did not contain any content.
                    E This user is from outside of this forum
                    E This user is from outside of this forum
                    [email protected]
                    wrote on last edited by
                    #35

                    For optimal performance, you should rewrite it in Rust:

                    inline_python::python! {
                        print(js2py.eval_js("(number) => number % 2 ? 'odd' : 'even'")(number))
                    };
                    
                    A 1 Reply Last reply
                    115
                    • rbos@lemmy.caR [email protected]

                      Argument?

                      S This user is from outside of this forum
                      S This user is from outside of this forum
                      [email protected]
                      wrote on last edited by
                      #36

                      You know, the stuff in @_

                      rbos@lemmy.caR 1 Reply Last reply
                      9
                      • satyrsack@lemmy.sdf.orgS [email protected]

                        Are you just referring to how Python uses the English and/or instead of the more common &&/||? I think what the user above you was talking about was Lua's strange ternary syntax using and/or.

                        lime@feddit.nuL This user is from outside of this forum
                        lime@feddit.nuL This user is from outside of this forum
                        [email protected]
                        wrote on last edited by [email protected]
                        #37

                        no, the linked table shows how python also returns the first non-falsey result of an a or b expression rather than just giving a boolean. it's useful for initialising optional reference args:

                        def foo(a: list = None)
                            a = a or []
                        

                        works with and as well.

                        1 Reply Last reply
                        4
                        • E [email protected]

                          For optimal performance, you should rewrite it in Rust:

                          inline_python::python! {
                              print(js2py.eval_js("(number) => number % 2 ? 'odd' : 'even'")(number))
                          };
                          
                          A This user is from outside of this forum
                          A This user is from outside of this forum
                          [email protected]
                          wrote on last edited by [email protected]
                          #38

                          And now you can use wasm to run it in a browser!

                          V 1 Reply Last reply
                          66
                          • A [email protected]

                            And now you can use wasm to run it in a browser!

                            V This user is from outside of this forum
                            V This user is from outside of this forum
                            [email protected]
                            wrote on last edited by
                            #39

                            Full circle 😆

                            U 1 Reply Last reply
                            22
                            • S [email protected]

                              Please. That's C's ternary operator. JS is just a pile of garbage cosplaying as a programming language

                              V This user is from outside of this forum
                              V This user is from outside of this forum
                              [email protected]
                              wrote on last edited by
                              #40

                              Why do you say it's a pile of garbage?

                              S 1 Reply Last reply
                              3
                              • D [email protected]

                                The ternary syntax is really my only real gripe with python design -- putting the conditional BETWEEN the true and false values feels so very messy to me.

                                B This user is from outside of this forum
                                B This user is from outside of this forum
                                [email protected]
                                wrote on last edited by [email protected]
                                #41

                                Eh, reads pretty naturally to me. That said, (like I lisp)

                                rovingnothing29@lemmy.worldR S 2 Replies Last reply
                                17
                                • rbos@lemmy.caR [email protected]

                                  It's kinda natural to me having used Perl a lot.

                                  L This user is from outside of this forum
                                  L This user is from outside of this forum
                                  [email protected]
                                  wrote on last edited by [email protected]
                                  #42

                                  You clearly haven't used Perl a lot. Perl's ternary looks like:

                                  $even = $num % 2 ? "nay" : "yay";

                                  Incidentally, it is also the same as PHP's, but mainly because PHP stole it.

                                  P rbos@lemmy.caR 2 Replies Last reply
                                  3
                                  • B [email protected]

                                    Eh, reads pretty naturally to me. That said, (like I lisp)

                                    rovingnothing29@lemmy.worldR This user is from outside of this forum
                                    rovingnothing29@lemmy.worldR This user is from outside of this forum
                                    [email protected]
                                    wrote on last edited by
                                    #43

                                    Oh, (you) (really) (like) (Lisp)?
                                    (That's) (great!)

                                    H 1 Reply Last reply
                                    1
                                    • B [email protected]

                                      Eh, reads pretty naturally to me. That said, (like I lisp)

                                      S This user is from outside of this forum
                                      S This user is from outside of this forum
                                      [email protected]
                                      wrote on last edited by
                                      #44

                                      Lisps makes more sense to me though

                                      (if condition a b)

                                      VS

                                      a if condition else b

                                      B 1 Reply Last reply
                                      10
                                      • V [email protected]

                                        Why do you say it's a pile of garbage?

                                        S This user is from outside of this forum
                                        S This user is from outside of this forum
                                        [email protected]
                                        wrote on last edited by
                                        #45

                                        Because of all the garbage

                                        F V 2 Replies Last reply
                                        15
                                        • L [email protected]

                                          You clearly haven't used Perl a lot. Perl's ternary looks like:

                                          $even = $num % 2 ? "nay" : "yay";

                                          Incidentally, it is also the same as PHP's, but mainly because PHP stole it.

                                          P This user is from outside of this forum
                                          P This user is from outside of this forum
                                          [email protected]
                                          wrote on last edited by
                                          #46

                                          You do get the if in the middle of stuff though in the form print(debug message) if $debug

                                          P 1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups