J. T. Jeuring

Publication List Details

Period

1990 - 2007

Number

69

Co-Authors

Scripting XML with Generic Haskell (2007)

Atanassow, F., Clarke, D., Jeuring, J.T.

A generic program is written once and works on values of many data types. Generic Haskell is a recent extension of the functional programming language Haskell that supports generic programming. This...

Strategy Feedback in an E-learning Tool for Mathematical Exercises (2007)

Jeuring, J.T., Pasman, W.

Exercises in mathematics are often solved using a standard procedure, such as for example solving a system of linear equations by subtracting equations from top to bottom, and then substituting...

Customizing an XML-Haskell data binding with type isomorphism inference in Generic Haskell (2007)

Atanassow, F., Jeuring, J.T.

This paper introduces a type-preserving XML Schema–Haskell data binding (or, translation) UUXML, and shows how to customize it by exploiting the theory of canonical isomorphisms to automatically...

Testing properties of generic functions (2007)

Jansson, P., Jeuring, J.T., Cabenda, L., Engels, G., Kleerekoper, J., Mak, S., ...

A datatype-generic function is a family of functions indexed by (the structure of) a type. Examples include equality tests, maps and pretty printers. Property based testing tools like QuickCheck and...

Testing properties of generic functions (2006)

Jansson, P., Jeuring, J.T., Cabenda, L., Engels, G., Kleerekoper, J., Mak, S., ...

Software testing is an important part of the software devel- opment process. Testing comes in many flavours: unit testing, property testing, regression testing, contract checking, etc. QuickCheck is...

Generating generic functions (2006)

Jeuring, J.T., Rodriquez, A., Smeding, G.

We present an approach to the generation of generic functions from user-provided specifications. The specifications consist of the type of a generic function, examples of instances that it should...

Comparing approaches to generic programming in Haskell (2006)

Hinze, R., Jeuring, J.T., Löh, A.

The last decade has seen a number of approaches to data- type-generic programming: PolyP, Functorial ML, `Scrap Your Boiler- plate', Generic Haskell, `Generics for the Masses', etc. The approaches...

Comparing approaches to generic programming in Haskell (2006)

Hinze, R., Jeuring, J.T., Löh, A.

The last decade has seen a number of approaches to generic programming: PolyP, Functorial ML, `Scrap Your Boilerplate', Generic Haskell, `Generics for the Masses', etc. The approaches vary in...

Generic views on data types (2006)

Holdermans, S., Jeuring, J.T., Löh, A., Rodriquez, A.

A generic function is defined by induction on the structure of types. The structure of a data type can be defined in several ways. For example, in PolyP a pattern functor gives the structure of a...

Generic views on data types (2006)

Holdermans, S., Jeuring, J.T., Löh, A., Rodriquez, A.

A generic function is defined by induction on the structure of types. The structure of a data type can be defined in several ways. For example, in PolyP a pattern functor gives the structure of a...

Feedback in an interactive equation solver (2006)

Passier, H., Jeuring, J.T.

E-learning tools for mathematical problem solving such as solving linear equations should be interactive. As with pen and paper, a student constructs a solution stepwise. E-learning tools provide the...

Typed Contracts for Functional Programming (2006)

Hinze, R., Jeuring, J.T., Löh, A.

A robust software component fulfills a contract: it expects data satisfying a certain property and promises to return data satisfying another property. The object-oriented community uses the...

Typed Contracts for Functional Programming (2006)

Hinze, R., Jeuring, J.T., Löh, A.

A robust software component fulfills a contract: it expects data satisfying a certain property and promises to return data satisfying another property. The object-oriented community uses the...

Customizing an XML-Haskell data binding with type isomorphism inference in Generic Haskell (2006)

Atanassow, F., Jeuring, J.T.

This paper introduces a type-preserving XML Schema–Haskell data binding (or, translation) UUXML, and shows how to customize it by exploiting the theory of canonical isomorphisms to automatically...

Feedback in an interactive equation solver (2006)

Passier, H., Jeuring, J.T.

E-learning tools for mathematical problem solving such as solving linear equations should be interactive. As with pen and paper, a student constructs a solution stepwise. E-learning tools provide the...

Type Inference for Generic Haskell (2005)

Rodriquez, A., Jeuring, J.T., Löh, A.

The more expressive a type system, the more type information has to be provided in a program. Having to provide a type is sometimes a pain, but lacking expressivity is often even worse. There is a...

Scripting XML with Generic Haskell (2003)

Atanassow, F., Clarke, D., Jeuring, J.T.

A generic program is written once and works on values of many data types. Generic Haskell is a recent extension of the functional programming language Haskell that supports generic programming. This...

Type-indexed data types (2003)

Hinze, R., Jeuring, J.T., Löh, A.

A polytypic function is a function that can be instantiated on many data types to obtain data type specific functionality. Examples of polytypic functions are the functions that can be derived in...

Improving type-error messages in functional languages (2002)

Heeren, B., Jeuring, J.T., Swierstra, D., Alcocer, P.A.

Although type systems do detect type errors in programs, they often produce uninformative error messages, that hardly give information about how to repair a program. One important shortcoming is the...

Type-indexed data types (2002)

Hinze, R., Jeuring, J.T., Löh, A.

A polytypic function is a function that can be instantiated on many data types to obtain data type specific functionality. Examples of polytypic functions are the functions that can be derived in...

Polytypic data conversion programs (2001)

Jansson, P., Jeuring, J.T.

Several generic programs for converting values from regular datatypes to some other format, together with their corresponding inverses, are constructed. Among the formats considered are shape plus...

The generic HASKELL user's guide : version 0.99 - Amber release (2001)

Clarke, D., Hinze, R., Jeuring, J.T., Löh, A., Wit, J. De

Software development often consists of designing datatypes around which functionality is added. Some functionality is datatype specific, whereas other functionality is defined on almost all datatypes...

Functional pearl : weaving a web (2001)

Hinze, R., Jeuring, J.T.

Suppose, you want to implement a structured editor for some term type, so that the user can navigate through a given term and perform edit actions on subterms. In this case you are immediately faced...

Pure Type Systems for Functional Programming (2001)

Jeuring, J.T.

We present a functional programming language based on Pure Type Systems PTSs. We show how we can define such a language by extending the PTS framework with algebraic data types case expressions and...

Proceedings Workshop on Generic Programming (WGP2000) (2000)

Jeuring, J.T.

This report contains the papers selected for presentation at the 2nd Workshop on Generic Programming (WGP2000), which was held on July 6, 2000 in Ponte de Lima, Portugal. Generic programming is about...

Advanced programming concepts in a course on grammars and parsing (1999)

Jeuring, J.T., Swierstra, S.D.

One of the important goals of the Computer Science curriculum at Utrecht University is to familiarize students with abstract programming concepts such as, for example, partial evaluation and...

Polytypic compact printing and parsing (1999)

Jansson, P., Jeuring, J.T.

A generic compact printer and a corresponding parser are constructed. These programs transform values of any regular datatype to and from a bit stream. The algorithms are constructed along with a...

Functional Pearls : Polytypic Unification (1998)

Jansson, P., Jeuring, J.T.

Unification, or two-way pattern matching, is the process of solving an equation involving two first-order terms with variables. Unification is used in type inference in many programming languages and...

Polytypic Programming (1996)

Jeuring, J.T., Jansson, P.

Many functions have to be written over and over again for different datatypes, either because datatypes change during the development of programs, or because functions with similar functionality are...

Constructing functional programs for grammar analysis problems (1995)

Jeuring, J.T., Swierstra, S.D.

This paper discusses the derivation of functional programs for grammar analysis problems, such as the Empty problem and the Reachable problem. Grammar analysis problems can be divided into two...

Polytypic pattern matching (1995)

Jeuring, J.T.

The pattern matching problem can be informally specified as follows: given a pattern and a text, find all occurrences of the pattern in the text. The pattern and the text may both be lists, or they...

Merging monads and folds for functional programming (1995)

Meijer, E., Jeuring, J.T.

These notes discuss the simultaneous use of generalised fold operators and monads to structure functional programs. Generalised fold operators structure programs after the decomposition of the value...

Bottom-up grammar analysis : a functional formulation (1994)

Jeuring, J.T., Swierstra, D.

This paper discusses bottom-up grammar analysis problems such as te EMPTY problem and the FIRST problem. It defines a general class of bottom-up grammar analysis problems, and from this definition it...

The derivation of on-line algorithms, with an application to finding palindromes (1994)

Jeuring, J.T.

A theory for the derivation of on-line algorithms is presented. The algorithms are derived in the Bird-Meertens calculus for program transformations. This calculus provides a concise functional...

Incremental data compression -extended abstract- (1992)

Jeuring, J.T.

Data may be compressed using textual substitution. Textual substitution identifies repeated substrings and replaces some or all substrings by pointers to another copy. We construct an incremental...

Incremental algorithms on lists (1991)

Jeuring, J.T.

Incremental computations can improve the performance of interactive programs such as spreadsheet programs, program development environments, text editors, etc. Incremental algorithms describe how to...