Skip to content
0
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
  • 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

Benvenuti nel Dudes Club Italiano

  1. Benvenuti nel Dudes Club Italiano.
  2. Whatever, man
  3. Erlang: pippa mentale su and e andalso

0

Online

53

Users

512

Topics

6.2k

Posts

Erlang: pippa mentale su and e andalso

Scheduled Pinned Locked Moved Whatever, man
9 Posts 6 Posters 148 Views 1 Watching
  • 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.
  • rossomotoundefined Offline
    rossomotoundefined Offline
    rossomoto
    wrote last edited by
    #1

    Alura, premesso che:

    • di erlang non so un cazzo nè capisco un cazzo

    • già di mio non so un cazzo e non capisco un cazzo

    La domanda è: ci sono dei casi in cui and è preferibile ad andalso?

    Ad esempio, qualcuno è mai incappato in casi in cui fosse necessario che tutte le condizioni venissero verificare?
    Che so, magari motivazioni di accounting, tipo: “voglio che tutte le funzioni chiamate dalla and vengano eseguite e tengano un log”?

    Oppure per motivazioni di sviluppo, tipo: “voglio evitarmi di stare qui a risolvere il problema di UNA delle funzioni per poi scoprire che ne falliva anche una seconda (e poi una terza e così via)”?

    L'acceleratore è tuo amico: fràka, dio bono!

    Aethissundefined somedudeundefined 2 Replies Last reply
    0
    • rossomotoundefined rossomoto

      Alura, premesso che:

      • di erlang non so un cazzo nè capisco un cazzo

      • già di mio non so un cazzo e non capisco un cazzo

      La domanda è: ci sono dei casi in cui and è preferibile ad andalso?

      Ad esempio, qualcuno è mai incappato in casi in cui fosse necessario che tutte le condizioni venissero verificare?
      Che so, magari motivazioni di accounting, tipo: “voglio che tutte le funzioni chiamate dalla and vengano eseguite e tengano un log”?

      Oppure per motivazioni di sviluppo, tipo: “voglio evitarmi di stare qui a risolvere il problema di UNA delle funzioni per poi scoprire che ne falliva anche una seconda (e poi una terza e così via)”?

      Aethissundefined Offline
      Aethissundefined Offline
      Aethiss
      wrote last edited by Aethiss
      #2

      rossomoto said in Erlang: pippa mentale su and e andalso:

      La domanda è: ci sono dei casi in cui and è preferibile ad andalso?

      Leggendo la documentazione, andAlso vuoi evitare di valutare il secondo confronto per evitare uno short-circuit se il primo e’ gia’ falso.
      Pero’ conosco poco Erlang e sinceramente non e’ che mi piaccia cosi’ tanto, quindi magari qualche altro puo’ integrare/sconfessare/migliorare quello che ho scritto.

      imho, se sono 2 booleani, e non ci sono strane pippe mentali dietro, un and basta ed avanza.

      Nemmeno cuoco, sottocuoco.

      1 Reply Last reply
      👍
      1
      • Cioccolataio Svizzereseundefined Offline
        Cioccolataio Svizzereseundefined Offline
        Cioccolataio Svizzerese
        Dudi
        wrote last edited by absc
        #3

        Onestamente mai successo.

        Peró chi ha scritto Erlang è un fisico. Ho l’impressione che da qualche parte, evitare lo short-cicuiting sia stato necessario, nel mondo telco.

        Ma sapere di poterlo fare, non è che mi dispiaccia tanto.

        È una di quelle cose che non usi mai, ma se non ce l’hai e ti farebbe comodo, bestemmi come un ghiro per non averla.

        FARE LAVORI CHE ODIAMO PER COMPRARE CAZZATE CHE NON CI SERVONO PER PIACERE A PERSONE CHE DETESTIAMO.

        Amiga Unicornundefined 1 Reply Last reply
        👍
        1
        • Cioccolataio Svizzereseundefined Cioccolataio Svizzerese

          Onestamente mai successo.

          Peró chi ha scritto Erlang è un fisico. Ho l’impressione che da qualche parte, evitare lo short-cicuiting sia stato necessario, nel mondo telco.

          Ma sapere di poterlo fare, non è che mi dispiaccia tanto.

          È una di quelle cose che non usi mai, ma se non ce l’hai e ti farebbe comodo, bestemmi come un ghiro per non averla.

          Amiga Unicornundefined Offline
          Amiga Unicornundefined Offline
          Amiga Unicorn
          Dudi
          wrote last edited by
          #4

          Cioccolataio Svizzerese said in Erlang: pippa mentale su and e andalso:

          Ho l’impressione che da qualche parte, evitare lo short-cicuiting sia stato necessario, nel mondo telco

          Onestamente, non credo che il mondo telco di per se’ abbia dei requisiti che riguardano il linguaggio di programmazione. Dopotutto, il codice viene compilato e viene mandato alla VM. Come descrivi quel che vuoi conta poco, al massimo poi e’ come il compilatore lo implementa…


          Kubernetes non e' Euro 5, per cui non puo' girare in centro. (N. Bonaparte, PhD in Computer Science)

          Matrix: @uriel:mtrx.keinpfusch.net
          Fedi: @uriel@x.keinpfusch.net

          1 Reply Last reply
          👍
          1
          • rossomotoundefined rossomoto

            Alura, premesso che:

            • di erlang non so un cazzo nè capisco un cazzo

            • già di mio non so un cazzo e non capisco un cazzo

            La domanda è: ci sono dei casi in cui and è preferibile ad andalso?

            Ad esempio, qualcuno è mai incappato in casi in cui fosse necessario che tutte le condizioni venissero verificare?
            Che so, magari motivazioni di accounting, tipo: “voglio che tutte le funzioni chiamate dalla and vengano eseguite e tengano un log”?

            Oppure per motivazioni di sviluppo, tipo: “voglio evitarmi di stare qui a risolvere il problema di UNA delle funzioni per poi scoprire che ne falliva anche una seconda (e poi una terza e così via)”?

            somedudeundefined Offline
            somedudeundefined Offline
            somedude
            Dudi
            wrote last edited by
            #5

            rossomoto said in Erlang: pippa mentale su and e andalso:

            La domanda è: ci sono dei casi in cui and è preferibile ad andalso?

            Controdomanda: non ti basta

            1> X = 0.
            0
            2> (X =/= 0) andalso (10 div X > 1).
            false
            

            ?

            Da persona che NON ha mai usato Erlang IRL, direi che il rhs potrebbe anche essere qualcosa di side-effectful che non necessariamente vuoi che succeda, ma non so se è una cosa che si usa davvero.

            “A personality is not a substitute for a motorcycle”

            rossomotoundefined 1 Reply Last reply
            👍
            1
            • somedudeundefined somedude

              rossomoto said in Erlang: pippa mentale su and e andalso:

              La domanda è: ci sono dei casi in cui and è preferibile ad andalso?

              Controdomanda: non ti basta

              1> X = 0.
              0
              2> (X =/= 0) andalso (10 div X > 1).
              false
              

              ?

              Da persona che NON ha mai usato Erlang IRL, direi che il rhs potrebbe anche essere qualcosa di side-effectful che non necessariamente vuoi che succeda, ma non so se è una cosa che si usa davvero.

              rossomotoundefined Offline
              rossomotoundefined Offline
              rossomoto
              wrote last edited by
              #6

              somedude said in Erlang: pippa mentale su and e andalso

              Da persona che NON ha mai usato Erlang IRL, direi che il rhs potrebbe anche essere qualcosa di side-effectful che non necessariamente vuoi che succeda, ma non so se è una cosa che si usa davvero.

              Io mi sono immaginato un caso in cui, per motivi di accounting/logging/“completezza di business” (???) si volesse che tutte le espressioni venissero valutate.

              Qualcosa per cui, in un caso del genere, :

              1> (expr1) and (expr2) and (expr3)
              false
              

              Ti chiedessero quali expr sono andate a buon fine e quali sono fallite.
              Con andalso se la prima va male le altre due non vengono nemmeno chiamate e non puoi rispondere alla domanda.

              Ma, appunto, non ho idea se sia un’esigenza reale che ha portato inizialmente ad implementare lo and senza cortocircuito.

              Magari è solo un incidente storico…

              L'acceleratore è tuo amico: fràka, dio bono!

              Cioccolataio Svizzereseundefined 2 Replies Last reply
              0
              • rossomotoundefined rossomoto

                somedude said in Erlang: pippa mentale su and e andalso

                Da persona che NON ha mai usato Erlang IRL, direi che il rhs potrebbe anche essere qualcosa di side-effectful che non necessariamente vuoi che succeda, ma non so se è una cosa che si usa davvero.

                Io mi sono immaginato un caso in cui, per motivi di accounting/logging/“completezza di business” (???) si volesse che tutte le espressioni venissero valutate.

                Qualcosa per cui, in un caso del genere, :

                1> (expr1) and (expr2) and (expr3)
                false
                

                Ti chiedessero quali expr sono andate a buon fine e quali sono fallite.
                Con andalso se la prima va male le altre due non vengono nemmeno chiamate e non puoi rispondere alla domanda.

                Ma, appunto, non ho idea se sia un’esigenza reale che ha portato inizialmente ad implementare lo and senza cortocircuito.

                Magari è solo un incidente storico…

                Cioccolataio Svizzereseundefined Offline
                Cioccolataio Svizzereseundefined Offline
                Cioccolataio Svizzerese
                Dudi
                wrote last edited by
                #7

                rossomoto

                IMHO, per togliersi il dubbio bisognerebbe sbirciare se andalso è usato nella codebase di Erlang stesso.

                FARE LAVORI CHE ODIAMO PER COMPRARE CAZZATE CHE NON CI SERVONO PER PIACERE A PERSONE CHE DETESTIAMO.

                1 Reply Last reply
                0
                • rossomotoundefined rossomoto

                  somedude said in Erlang: pippa mentale su and e andalso

                  Da persona che NON ha mai usato Erlang IRL, direi che il rhs potrebbe anche essere qualcosa di side-effectful che non necessariamente vuoi che succeda, ma non so se è una cosa che si usa davvero.

                  Io mi sono immaginato un caso in cui, per motivi di accounting/logging/“completezza di business” (???) si volesse che tutte le espressioni venissero valutate.

                  Qualcosa per cui, in un caso del genere, :

                  1> (expr1) and (expr2) and (expr3)
                  false
                  

                  Ti chiedessero quali expr sono andate a buon fine e quali sono fallite.
                  Con andalso se la prima va male le altre due non vengono nemmeno chiamate e non puoi rispondere alla domanda.

                  Ma, appunto, non ho idea se sia un’esigenza reale che ha portato inizialmente ad implementare lo and senza cortocircuito.

                  Magari è solo un incidente storico…

                  Cioccolataio Svizzereseundefined Offline
                  Cioccolataio Svizzereseundefined Offline
                  Cioccolataio Svizzerese
                  Dudi
                  wrote last edited by
                  #8

                  rossomoto

                  Leggendo in giro, gli operatori short-cicuiting sono stati aggiunti dopo per aiutare a semplificare certo codice.

                  In effetti, Erlang tratta and, or, xor e compagnia strettamente come operatori booleani e non come anche operatori di controllo (a-la C etc…).

                  Insomma, andalso è una convenienza, come a onor del vero ne sono state aggiunte molte in Erlang nel tempo (non dispiace affatto farlo agli sviluppatori).

                  Vedi alla voce l’espressione maybe

                  FARE LAVORI CHE ODIAMO PER COMPRARE CAZZATE CHE NON CI SERVONO PER PIACERE A PERSONE CHE DETESTIAMO.

                  1 Reply Last reply
                  0
                  • vertigoundefined Offline
                    vertigoundefined Offline
                    vertigo
                    Bowlers
                    wrote last edited by
                    #9

                    Un po’ come la differenza tra & e && in C.

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


                    • Login

                    • Don't have an account? Register

                    • Login or register to search.
                    • First post
                      Last post