Mariño, Julio

Foto de perfil

E-mails conocidos

Fecha de nacimiento

Proyectos de investigación

Unidades organizativas

Puesto de trabajo



Nombre de pila



Nombres alternativos

Afiliaciones conocidas

Universidad Politécnica de Madrid, Spain
Universidad Politécnica de Madrid Madrid, Spain

Páginas web conocidas

Página completa del ítem
Notificar un error en este autor

Resultados de la búsqueda

Mostrando 1 - 7 de 7
  • Artículo
    A Formal Semantics for Agent Distribution and Fault Tolerance in Jason
    Fernández Díaz, Álvaro; Fredlund, Lars-Ake; Benac Earle, Clara; Mariño, Julio. Actas de las XX Jornadas de Programación y Lenguajes (PROLE 2021), 2021-09-22.
    This paper provides a formal specification of the distribution and fault-tolerance mechanisms of eJason. The eJason programming language is an extension to the agent-oriented programming language Jason that introduces native support for the transparent distribution of agents as well as fault-tolerance mechanisms. This formal semantics is presented from a multiagent system perspective. It unambiguously describes both the possible evolution of the distributed multi- agent system over time and the different instruments for fault detection and fault recovery, hence exposing their strengths. This specification may serve as a reference for researchers interested in the inclusion of similar mechanisms in agent-oriented programming languages.
  • Artículo
    Towards Automatic Learning of Heuristics for Mechanical Transformations of Procedural Code
    Vigueras, Guillermo; Carro, Manuel; Tamarit, Salvador; Mariño, Julio. Actas de las XVI Jornadas de Programación y Lenguajes (PROLE 2016), 2016-09-02.
    The current trends in next-generation exascale systems go towards integrating a wide range of specialized (co-)processors into traditional supercomputers. Due to the efficiency of heterogeneous systems in terms of Watts and FLOPS per surface unit, opening the access of heterogeneous platforms to a range of users as wide as possible is an important problem to be tackled. However, the integration of heterogeneous, specialized devices increases programming complexity, restricting it to a few experts, and makes porting applications onto different computational infrastructures extremely costly. In order to bridge the gap between the programming needs of heterogeneous systems and the expertise of programmers, program transformation has been proposed elsewhere as a means to ease program generation and adaptation. This brings about several issues such as how to plan a transformation strategy which eventually generates code with increased performance. In this paper we propose a machine learning-based approach to learn heuristics for defining transformation strategies of a program transformation system. Our approach proposes a novel combination of reinforcement learning and classification methods to efficiently tackle the problems inherent to this type of systems. Preliminary results demonstrate the suitability of this approach.
  • Artículo
    HaskCell: Experiments with Purely Functional Spreadsheets
    Mariño, Julio; Ballesteros, Ignacio; Bueso de Barrio, Luis Eduardo. Actas de las XX Jornadas de Programación y Lenguajes (PROLE 2021), 2021-09-22.
    Spreadsheet programs are one of the most widespread information processing tools used by end-users. Their importance lies not only in their extensive use by people with little or no knowledge of programming but because of their relevance as a decision-making tool by executives in many companies. In spite of this long-term success, many studies have found plenty of pitfalls that make spreadsheets widely faulty, hence potentially leading to risky decisions. Because of these problems several analysis tools have been proposed to help find errors easily. In this project we present a different approach, more oriented to prevent the appearance of errors through a change in the way users interact with them. We focus on the _declarative_ essence of spreadsheets and propose to refound them on the grounds of modern functional programming languages. Our tool, _HaskCell_, uses a subset of _Haskell_ as the expression language for its cells and takes advantage of its rich type system to support a safer way of spreadsheet programming that prevents the appearance of certain errors and help understanding the meaning of programs, as new data types can be introduced from cell aggregates. Haskell is also used for defining reusable, user-defined functions and external modules. We show a working prototype incorporating the ideas above and point towards new features based on advanced functional programming technologies.
  • Artículo
    Towards a Semantics-Aware Code Transformation Toolchain for Heterogeneous Systems
    Tamarit, Salvador; Mariño, Julio; Vigueras, Guillermo; Carro, Manuel. Actas de las XVI Jornadas de Programación y Lenguajes (PROLE 2016), 2016-09-02.
    Obtaining good performance when programming heterogeneous computing platforms poses significant challenges. We present a program transformation environment, implemented in Haskell, where architecture-agnostic scientific C code with semantic annotations is transformed into functionally equivalent code better suited for a given platform. The transformation steps are represented as rules which can be fired when certain syntactic and semantic conditions are fulfilled. These rules are not hard-wired into the rewriting engine: they are written in a C-like language and are automatically processed and incorporated by the rewriting engine. That makes it possible for end-users to add their own rules or to provide sets of rules which are adapted to certain specific domains or purposes.
  • Artículo
    Work in Progress: Generation of Algebraic Data Types using Evolutionary Algorithms
    Ballesteros, Ignacio; Benac Earle, Clara; Fredlund, Lars-Ake; Herranz, Ángel; Mariño, Julio. Actas de las XXII Jornadas sobre Programación y Lenguajes (PROLE 2023), 2023-09-12.
    Automatic data generation is a key component of automated software testing. Random generation of test input data can uncover some bugs in software, but its effectiveness decreases when those inputs must satisfy complex properties in order to be meaningful. In this work we study an evolutionary approach to generate values that can be encoded as algebraic data types plus additional properties. More specifically, we have conducted an experiment on the automated generation of red-black trees using evolutionary algorithms. Although relatively simple, this example will allow us to introduce the main principles of evolutionary algorithms and how these principles can be applied to obtain valid, nontrivial samples of a given data structure. While the preliminary results show some potential, further experimentation is needed.
  • Artículo
    Tool Demonstration: Testing JSON Web Services Using Jsongen (Demostración)
    Ballesteros, Ignacio; Bueso de Barrio, Luis Eduardo; Fredlund, Lars-Ake; Mariño, Julio. Actas de las XVIII Jornadas de Programación y Lenguajes (PROLE 2018), 2018-09-17.
    This article describes a tool, jsongen, which permits testing behavioural aspects of Web Services that communicate using the JSON data format. Provided a characterisation of the JSON data as a JSON schema, the jsongen tool will: (i) automatically derive a QuickCheck (the property-based testing tool) generator which can generate an infinite number of JSON values that validate against the schema, and (ii) provides a generic QuickCheck state machine which is capable of following the (hyper)links documented in the JSON schema, to automatically explore the web service. The default behaviour of the state machine can be easily customized to include web service specific checks. The approach is demonstrated by applying it to the task of testing a simplified web service for banking.
  • Artículo
    Property-based Testing usando GPU
    Ballesteros, Ignacio; Benac Earle, Clara; Mariño, Julio; Fredlund, Lars-Ake; Herranz, Ángel. Actas de las XXIII Jornadas de Programación y Lenguajes (PROLE 2024), 2024-06-17.
    La generación aleatoria de datos es un componente fundamental del testing automático de programas. No obstante, la generación aleatoria tiene ciertas limitaciones cuando los datos generados tienen que cumplir ciertas propiedades. Este trabajo explora la posibilidad de utilizar hardware paralelo para hacer más efectivo el proceso de generación de datos y así mejorar la aplicabilidad de las técnicas de testing basado en propiedades.