Skip to main content

Showing 1–10 of 10 results for author: Tratt, L

Searching in archive cs. Search in all archives.
.
  1. arXiv:2303.15130  [pdf, other

    cs.SE cs.CR cs.PL

    Picking a CHERI Allocator: Security and Performance Considerations

    Authors: Jacob Bramley, Dejice Jacob, Andrei Lascu, Jeremy Singer, Laurence Tratt

    Abstract: Several open-source memory allocators have been ported to CHERI, a hardware capability platform. In this paper we examine the security and performance of these allocators when run under CheriBSD on Arm's experimental Morello platform. We introduce a number of security attacks and show that all but one allocator are vulnerable to some of the attacks - including the default CheriBSD allocator. We th… ▽ More

    Submitted 15 May, 2023; v1 submitted 27 March, 2023; originally announced March 2023.

  2. arXiv:1909.08557  [pdf, other

    cs.PL

    Default Disambiguation for Online Parsers

    Authors: Lukas Diekmann, Laurence Tratt

    Abstract: Since composed grammars are often ambiguous, grammar composition requires a mechanism for dealing with ambiguity: either ruling it out by using delimiters (which are awkward to work with), or by using disambiguation operators to filter a parse forest down to a single parse tree (where, in general, we cannot be sure that we have covered all possible parse forests). In this paper, we show that defau… ▽ More

    Submitted 2 July, 2020; v1 submitted 18 September, 2019; originally announced September 2019.

    Comments: 14 pages, 6 tables, 8 figures. Note: This reverts this paper back to v1 (which was accidentally replaced with a different paper)

  3. arXiv:1804.07133  [pdf, other

    cs.PL

    Don't Panic! Better, Fewer, Syntax Errors for LR Parsers

    Authors: Lukas Diekmann, Laurence Tratt

    Abstract: Syntax errors are generally easy to fix for humans, but not for parsers in general nor LR parsers in particular. Traditional 'panic mode' error recovery, though easy to implement and applicable to any grammar, often leads to a cascading chain of errors that drown out the original. More advanced error recovery techniques suffer less from this problem but have seen little practical use because their… ▽ More

    Submitted 3 July, 2020; v1 submitted 19 April, 2018; originally announced April 2018.

    Comments: 32 pages, 18 figures

    ACM Class: D.3

  4. arXiv:1602.06568  [pdf, other

    cs.PL

    Modelling homogeneous generative meta-programming

    Authors: Martin Berger, Laurence Tratt, Christian Urban

    Abstract: Homogeneous generative meta-programming (HGMP) enables the generation of program fragments at compile-time or run-time. We present the first foundational calculus which can model powerful HGMP languages such as Template Haskell. The calculus is designed such that we can gradually enhance it with the features needed to model many of the advanced features of real languages. As a demonstration of the… ▽ More

    Submitted 23 April, 2017; v1 submitted 21 February, 2016; originally announced February 2016.

    Comments: ECOOP 2017, to appear

    ACM Class: D.3.3

  5. Virtual Machine Warmup Blows Hot and Cold

    Authors: Edd Barrett, Carl Friedrich Bolz-Tereick, Rebecca Killick, Sarah Mount, Laurence Tratt

    Abstract: Virtual Machines (VMs) with Just-In-Time (JIT) compilers are traditionally thought to execute programs in two phases: the initial warmup phase determines which parts of a program would most benefit from dynamic compilation, before JIT compiling those parts into machine code; subsequently the program is said to be at a steady state of peak performance. Measurement methodologies almost always discar… ▽ More

    Submitted 6 October, 2017; v1 submitted 1 February, 2016; originally announced February 2016.

    Comments: 40 pages, 11 figures, 9 tables, 3 listings

    ACM Class: D.3

    Journal ref: Object-Oriented Programming, Systems, Languages & Applications. October 2017, Pages 52:1--52:27

  6. arXiv:1512.03207  [pdf, other

    cs.PL cs.DB

    Making an Embedded DBMS JIT-friendly

    Authors: Carl Friedrich Bolz, Darya Kurilova, Laurence Tratt

    Abstract: While database management systems (DBMSs) are highly optimized, interactions across the boundary between the programming language (PL) and the DBMS are costly, even for in-process embedded DBMSs. In this paper, we show that programs that interact with the popular embedded DBMS SQLite can be significantly optimized - by a factor of 3.4 in our benchmarks - by inlining across the PL / DBMS boundary.… ▽ More

    Submitted 20 June, 2016; v1 submitted 10 December, 2015; originally announced December 2015.

    Comments: 24 pages, 18 figures

    ACM Class: D.3.4

  7. Fine-grained Language Composition: A Case Study

    Authors: Edd Barrett, Carl Friedrich Bolz, Lukas Diekmann, Laurence Tratt

    Abstract: Although run-time language composition is common, it normally takes the form of a crude Foreign Function Interface (FFI). While useful, such compositions tend to be coarse-grained and slow. In this paper we introduce a novel fine-grained syntactic composition of PHP and Python which allows users to embed each language inside the other, including referencing variables across languages. This composi… ▽ More

    Submitted 11 July, 2016; v1 submitted 30 March, 2015; originally announced March 2015.

    Comments: 27 pages, 4 tables, 5 figures

    ACM Class: D.3.4

    Journal ref: European Conference on Object-Oriented Programming (ECOOP). July 2016, Pages 3:1--3:27

  8. Program Logics for Homogeneous Generative Run-Time Meta-Programming

    Authors: Martin Berger, Laurence Tratt

    Abstract: This paper provides the first program logic for homogeneous generative run-time meta-programming---using a variant of MiniML by Davies and Pfenning as its underlying meta-programming language. We show the applicability of our approach by reasoning about example meta-programs from the literature. We also demonstrate that our logics are relatively complete in the sense of Cook, enable the inductive… ▽ More

    Submitted 29 March, 2017; v1 submitted 16 November, 2014; originally announced November 2014.

    Journal ref: Logical Methods in Computer Science, Volume 11, Issue 1 (March 6, 2015) lmcs:929

  9. arXiv:1409.6611  [pdf

    cs.SE

    Model Transformations in Practice Workshop (MTiP)

    Authors: Jean Bézivin, Bernhard Rumpe, Andy Schürr, Laurence Tratt

    Abstract: Model Transformations in Practice (MTiP) 2005 was a workshop which provided a forum for the model transformation community to discuss practical model transformation issues. Although many different model transformation approaches have been proposed and explored in recent years, there has been little work on comparing and contrasting various approaches. Without such comparisons, it is hard to assess… ▽ More

    Submitted 22 September, 2014; originally announced September 2014.

    Comments: 8 pages, 4 figures

    Journal ref: Satellite Events at the MoDELS 2005 Conference, MoDELS 2005. J-M Bruel (Ed.), LNCS 3844. Springer, January 2006

  10. Approaches to Interpreter Composition

    Authors: Edd Barrett, Carl Friedrich Bolz, Laurence Tratt

    Abstract: In this paper, we compose six different Python and Prolog VMs into 4 pairwise compositions: one using C interpreters; one running on the JVM; one using meta-tracing interpreters; and one using a C interpreter and a meta-tracing interpreter. We show that programs that cross the language barrier frequently execute faster in a meta-tracing composition, and that meta-tracing imposes a significantly lo… ▽ More

    Submitted 19 May, 2015; v1 submitted 2 September, 2014; originally announced September 2014.

    Comments: 33 pages, 1 figure, 9 tables

    Journal ref: Computer Languages, Systems and Structures (COMLAN). Volume 44C, December 2015, Pages 199-217