Barry Jay's Publications (reverse chronological order)

Title Full TextAbstract
Pattern Calculus: Computing with Functions and Structures
First-class Patterns
Scrap your type applications
Adaptiveness in well-typed Java bytecode verification
Pure Pattern Calculus (revised)
Programming with Heterogeneous Structures: Manipulating XML data Using bondi
Typing first-class patterns
Type variables simplify sub-typing
A Relational Account of Objects
The Pattern Calculus
Methods as pattern-matching functions
Distinguishing Data Structures and Functions: the Constructor Calculus and Functorial Types
Partial evaluation of shaped programs: experience with FISh
Costing Parallel Programs as a Function of Shapes
The FISh language definition
Monads, Shapely Functors and Traversals
Experiments with Generic Visitors
Poly-dimensional array programming
Functors, Types and Shapes
Functorial ML
Polymorphism over Nested Regular Arrays: theory and implementation in FiSh
The Functional Imperative: Shape!
The Essence of the Visitor Pattern
Covariant Types
Separating Shape from Data
A Monadic Calculus for Parallel Costing in a Functional Language of Arrays
Shape Checking of Array Programs
Shaping Object-Oriented Programs
Shape in Computing
Shape Analysis for Parallel Computing
A Fresh Look at Parametric Polymorphism: Covariant Types
Data Categories
A Semantics for Shape
Matrices, Monads and the Fast Fourier Transform
Finite Objects in a Locos
Shapely Types and Shape Polymorphism
Polynomial Polymorphism
An Introduction to Categories in Computing
Tail Recursion Through Universal Invariants
The Virtues of Eta-Expansion
Compositional Characterization of Observable Program Properties
Modelling Reduction in Confluent Categories
Coherence in Category Theory and the Church-Rosser Property
Fixpoint and Loop Constructions as Colimits
Partial Functions, Ordered Categories, Limits and Cartesian Closure