Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Kristoffer H. Rose is active.

Publication


Featured researches published by Kristoffer H. Rose.


ACM Transactions on Database Systems | 2008

Commutativity analysis for XML updates

Giorgio Ghelli; Kristoffer H. Rose; Jérôme Siméon

An effective approach to support XML updates is to use XQuery extended with update operations. This approach results in very expressive languages which are convenient for users but are difficult to optimize or reason about. A crucial question underlying many static analysis problems for such languages, from optimization to view maintenance, is whether two expressions commute. Unfortunately, commutativity is undecidable for most existing XML update languages. In this article, we propose a conservative analysis for an expressive XML update language that can be used to determine commutativity. The approach relies on a form of path analysis that computes upper bounds for the nodes that are accessed or modified in a given expression. Our main result is a theorem that can be used to identify commuting expressions. We illustrate how the technique applies to concrete examples of query optimization in the presence of updates.


Journal of Functional Programming | 2001

Normalization by evaluation with typed abstract syntax

Olivier Danvy; Morten Rhiger; Kristoffer H. Rose

In higher-order abstract syntax, the variables and bindings of an object language are represented by variables and bindings of a meta-language. Let us consider the simply typed λ-calculus as object language and Haskell as meta-language. For concreteness, we also throw in integers and addition, but only in this section.


Ibm Systems Journal | 2006

Virtual XML: a toolbox and use cases for the XML world view

Kristoffer H. Rose; Susan Malaika; Robert Jeffrey Schloss

Although the Extensible Markup Language (XML) has gained in popularity and has resulted in the creation of powerful software for authoring, transforming, and querying XML-based business data, much information remains in non-XML form. In this paper we introduce an approach to virtualize data resources and thus enable applications to access both XML and non-XML sources. We describe the architectural components that enable virtual XML-a toolbox that includes a cursor model, an XML-view mechanism such as the view created with the Data Format Description Language (DFDL), and XML processing languages. We illustrate the applicability of virtual XML through a number of use cases in various environments. We discuss the products that we expect from vendors and the open-source community and the way enterprises can plan to take advantage of virtual XML developments. Finally, we outline future research directions that include a vision of virtual XML that covers large-scale structures such as entire file systems, databases, or even the World Wide Web.


international world wide web conferences | 2005

Compiling XSLT 2.0 into XQuery 1.0

Achille Fokoue; Kristoffer H. Rose; Jérôme Siméon; Lionel Villard

As XQuery is gathering momentum as the standard query language for XML, there is a growing interest in using it as an integral part of the XML application development infrastructure. In that context, one question which is often raised is how well XQuery interoperates with other XML languages, and notably with XSLT. XQuery 1.0 [16] and XSLT 2.0 [7] share a lot in common: they share XPath 2.0 as a common sub-language and have the same expressiveness. However, they are based on fairly different programming paradigms. While XSLT has adopted a highly declarative template based approach, XQuery relies on a simpler, and more operational, functional approach.In this paper, we present an approach to compile XSLT 2.0 into XQuery 1.0, and a working implementation of that approach. The compilation rules explain how XSLTs template-based approach can be implemented using the functional approach of XQuery and underpins the tight connection between the two languages. The resulting compiler can be used to migrate a XSLT code base to XQuery, or to enable the use of XQuery runtimes (e.g., as will soon be provided by most relational database management systems) for XSLT users. We also identify a number of areas where compatibility between the two languages could be improved. Finally, we show experiments on actual XSLT stylesheets, demonstrating the applicability of the approach in practice.


international conference on management of data | 2008

XML query optimization in the presence of side effects

Giorgio Ghelli; Nicola Onose; Kristoffer H. Rose; Jérôme Siméon

The emergence of database languages with side effects, notably for XML, raises significant challenges for database compilers and optimizers. In this paper, we extend an algebra for the W3C XML query language with operations that allow data to be immediately updated. We study the impact of that extension on logical optimization, join detection, and pipelining. The main result of this work is to show that, with proper care, a number of important optimizations based on nested relational algebras remain applicable in the presence of side effects. Our approach relies on an analysis of the conditions that must be checked in order for algebraic rewritings to hold. An implementation and experimental results demonstrate the effectiveness of the approach.


database programming languages | 2007

A better semantics for XQuery with side-effects

Giorgio Ghelli; Nicola Onose; Kristoffer H. Rose; Jérôme Siméon

Formal semantics for XQuery with side-effects have been proposed in [13,16]. We propose a different semantics which is better suited for database compilation. We substantiate this claim by formalizing the compilation of XQuery extended with updates into a database algebra. We prove the correctness of the proposed compilation by mapping both the source language and the algebra to a common core language with list comprehensions and extensible tuples.


rewriting techniques and applications | 2011

CRSX - Combinatory Reduction Systems with Extensions.

Kristoffer H. Rose

Combinatory Reduction Systems with Extensions (CRSX) is a system available from http://crsx.sourceforge.net and characterized by the following properties: - Higher-order rewriting engine based on pure Combinatory Reduction Systems with full strong reduction (but no specified reduction strategy). - Rule and term syntax based on lambda-calculus and term rewriting conventions including Unicode support. - Strict checking and declaration requirements to avoid idiosyncratic errors in rewrite rules. - Interpreter is implemented in Java 5 and usable stand-alone as well as from an Eclipse plugin (under development). - Includes a custom parser generator (front-end to JavaCC parser generator) designed to ease parsing directly into higher-order abstract syntax (as well as permitting the use of custom syntax in rules files). - Experimental (and evolving) sort system to help rule management. - Compiler from (well-sorted deterministic subset of) CRSX to stand-alone C code.


Concurrency and Computation: Practice and Experience | 2001

Java Access Protection through Typing

Eva Rose; Kristoffer H. Rose

We propose an integration of field access rights into the Java type system such that those access permission checks which are now performed dynamically (at run time), can instead be done statically, i.e. checked by the Java compiler and rechecked (at link time) by the bytecode verifier. We explain how this can be extended to remove all dynamic checks of field read access rights, completely eliminating the overhead of get methods for reading the value of a field. Improvements include using fast static lookup instead of dynamic dispatch for field access (without requiring a sophisticated inlining analysis), the space required by get methods is avoided, and denial‐of‐service attacks on field access is prevented. We sketch a formalization of adding field access to the bytecode verifier which will make it possible to prove that the change is safe and backwards compatible. Copyright


Journal of Automated Reasoning | 2012

On Explicit Substitution with Names

Kristoffer H. Rose; Roel Bloo; Frédéric Lang

This paper recounts the origins of the λx family of calculi of explicit substitution with proper variable names, including the original result of preservation of strong β-normalization based on the use of synthetic reductions for garbage collection. We then discuss the properties of a variant of the calculus which is also confluent for “open” terms (with meta-variables), and verify that a version with garbage collection preserves strong β-normalization (as is the state of the art), and we summarize the relationship with other efforts on using names and garbage collection rules in explicit substitution.


Semantics and algebraic specification | 2009

Converting between combinatory reduction systems and big step semantics

Hanne Gottliebsen; Kristoffer H. Rose

We make a connection between higher-order rewriting in the form of combinatory reduction systems (CRS) and logic-based operational semantics in the form of big step semantic (BSS) specifications. We show how sets of CRS rewrite rules can be encoded as BSS, and how BSS (including natural semantics) can be encoded as CRS. The connections permit the use of proper variables and substitution in both formalisms.

Collaboration


Dive into the Kristoffer H. Rose's collaboration.

Researchain Logo
Decentralizing Knowledge