New Room for Polytypic Programming


Subject: New Room for Polytypic Programming
From: Karl Lieberherr (lieber@ccs.neu.edu)
Date: Wed Apr 18 2001 - 15:43:13 EDT


Patrik's talk will be in a different room:

173 Dodge

(Egan 222 happens to be under construction for
Matthias Felleisen's arrival).

More information on Polytypic Programming is at:

http://www.cs.chalmers.se/~patrikj/poly/

-- Karl Lieberherr

=============================
You are invited to a presentation by Patrik Jansson
on his PhD thesis work.

-- Karl Lieberherr

Functional Polytypic Programming

Patrik Jansson
Chalmers University of Technology, Sweden

Date: Thursday, April 19
Time: 4.00-5.30 pm

Northeastern University
http://www.campusmap.neu.edu/
Egan 222 (Seminar room inside the CS area)

I will give a top level overview of my thesis trying to focus on the
relation to work done by Lieberherr et. al. here at Northeastern. The
thesis abstract follows below. There is plenty of material to choose from
so I hope an overview will make the audience interested in a follow-up on
a selected subtopic later this spring.

Thesis Abstract:
Many algorithms have to be implemented over and over again for
different datatypes, either because datatypes change during the
development of programs, or because the same algorithm is used for
several datatypes. Examples of such algorithms are equality tests,
pretty printers, and pattern matchers, and polytypic programming is
a paradigm for expressing such algorithms. This dissertation
introduces polytypic programming for functional programming
languages, shows how to construct and prove properties of polytypic
algorithms, presents the language extension PolyP for implementing
polytypic algorithms in a type safe way, and presents a number of
applications of polytypic programming. The applications include a
library of basic polytypic building blocks, PolyLib, and two larger
applications of polytypic programming: rewriting and data
conversion.
PolyP extends a functional language (a subset of Haskell) with a
construct for defining polytypic functions by induction on the
structure of user-defined datatypes. Programs in the extended
language are translated to Haskell.



This archive was generated by hypermail 2b28 : Wed Apr 18 2001 - 15:44:43 EDT