Skip to main content

Showing 1–8 of 8 results for author: Polito, G

Searching in archive cs. Search in all archives.
.
  1. Meta-compilation of Baseline JIT Compilers with Druid

    Authors: Nahuel Palumbo, Guillermo Polito, Stéphane Ducasse, Pablo Tesone

    Abstract: Virtual Machines (VMs) combine interpreters and just-in-time (JIT) compiled code to achieve good performance. However, implementing different execution engines increases the cost of developing and maintaining such solutions. JIT compilers based on meta-compilation cope with these issues by automatically generating optimizing JIT compilers. This leaves open the question of how meta-compilation appl… ▽ More

    Submitted 27 February, 2025; originally announced February 2025.

    Journal ref: The Art, Science, and Engineering of Programming, 2025, Vol. 10, Issue 1, Article 9

  2. A VM-Agnostic and Backwards Compatible Protected Modifier for Dynamically-Typed Languages

    Authors: Iona Thomas, Vincent Aranega, Stéphane Ducasse, Guillermo Polito, Pablo Tesone

    Abstract: In object-oriented languages, method visibility modifiers hold a key role in separating internal methods from the public API. Protected visibility modifiers offer a way to hide methods from external objects while authorizing internal use and overriding in subclasses. While present in main statically-typed languages, visibility modifiers are not as common or mature in dynamically-typed languages. I… ▽ More

    Submitted 21 June, 2023; originally announced June 2023.

    Journal ref: The Art, Science, and Engineering of Programming, 2024, Vol. 8, Issue 1, Article 2

  3. arXiv:1909.03658  [pdf, other

    cs.PL cs.SE

    Sindarin: A Versatile Scripting API for the Pharo Debugger

    Authors: Thomas Dupriez, Guillermo Polito, Steven Costiou, Vincent Aranega, Stéphane Ducasse

    Abstract: Debugging is one of the most important and time consuming activities in software maintenance, yet mainstream debuggers are not well-adapted to several debugging scenarios. This has led to the research of new techniques covering specific families of complex bugs. Notably, recent research proposes to empower developers with scripting DSLs, plugin-based and moldable debuggers. However, these solution… ▽ More

    Submitted 9 September, 2019; originally announced September 2019.

  4. Out-Of-Place debugging: a debugging architecture to reduce debugging interference

    Authors: Matteo Marra, Guillermo Polito, Elisa Gonzalez Boix

    Abstract: Context. Recent studies show that developers spend most of their programming time testing, verifying and debugging software. As applications become more and more complex, developers demand more advanced debugging support to ease the software development process. Inquiry. Since the 70's many debugging solutions were introduced. Amongst them, online debuggers provide a good insight on the conditio… ▽ More

    Submitted 5 November, 2018; originally announced November 2018.

    Journal ref: The Art, Science, and Engineering of Programming, 2019, Vol. 3, Issue 2, Article 3

  5. arXiv:1809.07258  [pdf, other

    cs.LG stat.ML

    DPPy: Sampling DPPs with Python

    Authors: Guillaume Gautier, Guillermo Polito, Rémi Bardenet, Michal Valko

    Abstract: Determinantal point processes (DPPs) are specific probability distributions over clouds of points that are used as models and computational tools across physics, probability, statistics, and more recently machine learning. Sampling from DPPs is a challenge and therefore we present DPPy, a Python toolbox that gathers known exact and approximate sampling algorithms for both finite and continuous DPP… ▽ More

    Submitted 12 August, 2019; v1 submitted 19 September, 2018; originally announced September 2018.

    Comments: Code at http://github.com/guilgautier/DPPy/ Documentation at http://dppy.readthedocs.io/

    Journal ref: Journal of Machine Learning Research 20 (2019) 1-7

  6. Scoped Extension Methods in Dynamically-Typed Languages

    Authors: Guillermo Polito, Camille Teruel, Stéphane Ducasse, Luc Fabresse

    Abstract: Context. An extension method is a method declared in a package other than the package of its host class. Thanks to extension methods, developers can adapt to their needs classes they do not own: adding methods to core classes is a typical use case. This is particularly useful for adapting software and therefore to increase reusability. Inquiry. In most dynamically-typed languages, extension meth… ▽ More

    Submitted 4 August, 2017; originally announced August 2017.

    Journal ref: The Art, Science, and Engineering of Programming, 2018, Vol. 2, Issue 1, Article 1

  7. DeltaImpactFinder: Assessing Semantic Merge Conflicts with Dependency Analysis

    Authors: Martín Dias, Guillermo Polito, Damien Cassou, Stéphane Ducasse

    Abstract: In software development, version control systems (VCS) provide branching and merging support tools. Such tools are popular among developers to concurrently change a code-base in separate lines and reconcile their changes automatically afterwards. However, two changes that are correct independently can introduce bugs when merged together. We call semantic merge conflicts this kind of bugs. Change i… ▽ More

    Submitted 14 September, 2015; originally announced September 2015.

    Comments: International Workshop on Smalltalk Technologies 2015, Jul 2015, Brescia, Italy

  8. arXiv:1212.2341  [pdf, other

    cs.PL

    Semantics and Security Issues in JavaScript

    Authors: Stéphane Ducasse, Nicolas Petton, Guillermo Polito, Damien Cassou

    Abstract: There is a plethora of research articles describing the deep semantics of JavaScript. Nevertheless, such articles are often difficult to grasp for readers not familiar with formal semantics. In this report, we propose a digest of the semantics of JavaScript centered around security concerns. This document proposes an overview of the JavaScript language and the misleading semantic points in its des… ▽ More

    Submitted 11 December, 2012; originally announced December 2012.

    Comments: Deliverable Resilience FUI 12: 7.3.2.1 Failles de sécurité en JavaScript / JavaScript security issues