10
views
0
recommends
+1 Recommend
1 collections
    0
    shares
      • Record: found
      • Abstract: found
      • Article: found
      Is Open Access

      Attaining multiple dispatch in widespread object-oriented languages Translated title: Aproximaciones para obtener multi-métodos en los lenguajes orientados a objetos más extendidos

      research-article

      Read this article at

      Bookmark
          There is no author summary for this article yet. Authors can add summaries to their articles on ScienceOpen to make them more accessible to a non-specialist audience.

          Abstract

          Multiple dispatch allows determining the actual method to be executed, depending on the dynamic types of its arguments. Although some programming languages provide multiple dispatch, most widespread object-oriented languages lack this feature. Therefore, different implementation techniques are commonly used to obtain multiple dispatch in these languages. We evaluate the existing approaches, presenting a new one based on hybrid dynamic and static typing. A qualitative evaluation is presented, considering factors such as software maintainability and readability, code size, parameter generalization, and compile-time type checking. We also perform a quantitative assessment of runtime performance and memory consumption.

          Translated abstract

          Los multi-métodos seleccionan una de las implementaciones de un método sobrecargado, dependiendo en el tipo dinámico de sus argumentos. Aunque existen lenguajes que soportan multi-métodos, la mayoría de los lenguajes más extendidos no ofrecen esta funcionalidad. Por ello, es común ver el uso de distintos mecanismos auxiliares para obtener su funcionalidad. En este artículo evaluamos las alternativas existentes y presentamos una nueva basada en lenguajes con tipado híbrido. Una primera evaluación cualitativa analiza factores como la mantenibilidad, legibilidad, tamaño del código fuente, generalización de los parámetros y comprobación estática de tipos. También presentamos una evaluación cuantitativa del rendimiento en tiempo de ejecución y consumo de memoria.

          Related collections

          Most cited references20

          • Record: found
          • Abstract: not found
          • Article: not found

          OPTIMIZING REFLECTIVE PRIMITIVES OF DYNAMIC LANGUAGES

            Bookmark
            • Record: found
            • Abstract: not found
            • Book: not found

            Design Patterns: Elements of Reusable Object-Oriented Software

              Bookmark
              • Record: found
              • Abstract: not found
              • Article: not found

              Separating adaptable persistence attributes through computational reflection

                Bookmark

                Author and article information

                Contributors
                Role: ND
                Role: ND
                Role: ND
                Role: ND
                Journal
                dyna
                DYNA
                Dyna rev.fac.nac.minas
                Universidad Nacional de Colombia (Medellín )
                0012-7353
                August 2014
                : 81
                : 186
                : 242-250
                Affiliations
                [1 ] University of Oviedo Spain
                [2 ] University of Oviedo Spain
                [3 ] University of Oviedo Spain
                [4 ] University of Oviedo Spain
                Article
                S0012-73532014000400032
                10.15446/dyna.v81n186.40428
                11e49810-2329-4923-b380-c13e01c50be0

                http://creativecommons.org/licenses/by/4.0/

                History
                Product

                SciELO Colombia

                Self URI (journal page): http://www.scielo.org.co/scielo.php?script=sci_serial&pid=0012-7353&lng=en
                Categories
                ENGINEERING, MULTIDISCIPLINARY

                General engineering
                Multiple dispatch,multi-method,dynamic binding,reflection,method overload,hybrid typing,Multi-métodos,enlace dinámico,reflexión,sobrecarga de métodos,tipado híbrido

                Comments

                Comment on this article