| J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Tutorial Text: 2nd Int. School on Advanced Functional Programming, volume 1129, pages 68--114. Springer-Verlag, Berlin, 1996. |
....are composed from predicates for anchor nodes, end nodes, intermediate nodes, and disfavoured nodes and edges. There is no notion of a completely generic traversal scheme. Traversal control is limited by the bias towards paths and due to the absence of one layer traversal primitives. Polytypism [14] in functional programming supports traversal over data of any type based on induction over the type structure. Polytypic functions gain generic access to the components of compound terms by viewing term types as sums of products. Polytypic functions can be customised by type specific cases. Until ....
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, 2nd Int. School on Advanced Functional Programming, Olympia, WA, USA, 26--30 Aug 1996, volume 1129 of LNCS, pages 68--114. Springer-Verlag, Berlin, 1996.
....ai ( Phi : a a Theta a for all regular F , giving a generic way to reduce data structures with a binary operation. In this paper we define a generalization of crush, and present some examples. Further polytypic basic building blocks, as well as several advanced applications, can be found in [5, 6, 4] Part of this work was performed while visiting Kestrel Institute, Palo Alto. 2 Preliminaries Constant functions Given x 2 A, the mapping (z 7 x ) always returning x is denoted as x . It can be polymorphically typed as x : A a with a type variable a. We have x f = x for any f . ....
Johan Jeuring and Patrik Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Advanced Functional Programming, Second International School, pages 68--114. Springer-Verlag, 1996. LNCS 1129. www.cs.chalmers.se/ johanj/publications.html.
....more precisely as a polyfunctorial function. The qualifier polytypic will be used as a general term for functions that are parametrised by functors of arbitrary arity. Now, inspired by the initial algebra semantics the structure of functors is usually given by the following grammar, see [15] or [12]. B = KT j Fst j Snd j B B j B Theta B j F Delta B F = B The non terminal B generates the language of bifunctors. By B we denote the unary functor F given as the least solution of the equation F a =B(a;F a) The functor F = B is also known as a type functor. This representation entails that a ....
Johan Jeuring and Patrik Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Tutorial Text 2nd International School on Advanced Functional Programming, Olympia, WA, USA, volume 1129 of Lecture Notes in Computer Science, pages 68--114. SpringerVerlag, 1996.
....of equational laws for program construction and transformation. This paper introduces the implementation of such recursion patterns as type parametric, or polytypic, functionals in the Camila prototyping language. Several examples are discussed. 1 Introduction Polytypic or generic programming [8,10] deals with algorithmic constructions that are defined uniformly over a (large) class of data types and, therefore, abstracted with respect to their type constructors. In fact, a polytypic program distinguishes itself from a polymorphic one in that the parameter is a type constructor (i.e. a map, ....
J. Jeuring and P. Jansson. Polytypic programming. In T. Launchbury, E. Meijer, and T. Sheard, editors, International Summer School on Advanced Functional Programming, pages 68--114. Springer Lect. Notes Comp. Sci. (1129), 1996.
....more convenient notation for the functions defined here. In the current implementations of languages with dependent types, zipWith would need to have extra parameter(s) with type information which, to the programmer, might be harder to write than the numerals. In languages for generic programming [3, 4] it is possible to define a more general version of zipWith than the one in the Haskell library, a zipWith which would work for arbitrary datatypes rather than only for lists. However, the existing proposals of languages for generic programming cannot express the idea of a variable number of ....
J. Jeuring and P. Jansson. Polytypic Programming. In E. Meijer and T. Sheard, editors, Advanced Functional Programming, volume 1129 of LNCS, pages 68--114. Springer-Verlag, 1996.
....By de ning a certain traverse function, the user can in uence the order in which the subobjects are processed to give them their identi ers. However, for every (algebraic) type there is a standard in order traversal where the components of a tuple are processed from left to right. This polytypic [JJ96] version of traverse can automatically be derived from the type de nitions and can deal with arbitrary nested and recursive types, 4 General Skeleton Implementation 4.1 Map Skeleton Now that we have described the generic cover implementation in the last section, we can use this generic cover ....
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T Sheard, editors, Intern. School on Advanced Functional Programming (AFP'96), volume 1129 of LNCS, pages 68-114. Springer, 1996.
....8T : 8A;B : A B) T (A) T (B) Notice that the notion of polytypy is completely orthogonal to the concept of polymorphism, since every instance of the family of polytypic map functions is polymorphic. Many interesting polytypic functions have been identified and described in the literature [10, 11, 15 17, 25, 27], and concepts from category theory have proven especially suitable for expressing polytypic functions and reasoning about them. In this approach, datatypes are modeled as initial objects in categories of functor algebras [14] and polytypic constructions are formulated using initiality without ....
J. Jeuring and P. Jansson. Polytypic Programming. In T. Launchbury, E. Meijer, and T. Sheard, editors, Advanced Functional Programming, Lecture Notes in Computer Science, pages 68--114. Springer-Verlag, 1996. 20
....binary trees to other data types. Different from the categorical formulation of polytypic scan in [Gib98] we give a more natural definition using an explicit accumulating parameter, and simplify the condition to guarantee the existence of efficient parallel implementation. Polytypic programming [JJ96, JJ97] are widely used in the Squigol community [Mal89, Fok92, MFP91] but its importance in parallel programming has not been well recognized. Starting with [BdM96] more and more algorithmic problems have been considered in a polytypic setting [dM95, Jeu95, Mee96, JJ96] In this paper, we made ....
....Polytypic programming [JJ96, JJ97] are widely used in the Squigol community [Mal89, Fok92, MFP91] but its importance in parallel programming has not been well recognized. Starting with [BdM96] more and more algorithmic problems have been considered in a polytypic setting [dM95, Jeu95, Mee96, JJ96] In this paper, we made an attempt to apply polytypic idea to the development of parallel algorithms. Finally, we should compare to our previous work. In fact, this work is a continuation of our effort to apply the so called program calculation technique to the development of efficient parallel ....
J. Jeuring and P. Jansson. Polytypic programming. In 2nd International Summer School on AdvancedFunctional Programming Techniques, LNCS. Springer Verlag, July 1996.
....Similarly, although a generator may check that its parameter type has the correct properties 4 , there is no guarantee that the output from an arbitrary generator is well typed. If type errors are present they will be detected during compilation. 6. 1 Polytypic Programming Polytypic programming [3] is the use of functions that can operate upon any data structure, regardless of its shape. For example, while a conventional map applies a function to elements of a list, a polytypic map applies a function to every element of any datatype. A polytypic map has similar behaviour whether the ....
Johan Jeuring and Patrik Jansson. Polytypic programming. In John Launchbury, Eric Meijer, and T. Sheard, editors, Tutorial Text 2nd Intl. School on Advanced Functional Programming, Olympia, WA, USA, 26--30 Aug 1996, volume 1129 of Lecture Notes in Computer Science, pages 68-- 114. Springer-Verlag, Berlin, 1996.
....Moggi et al. BJM96] on functorial ML has similarities to the present work in a typing discipline which allows type constructor parameters. But still this work does not deal with non uniform recursion. The work on polytypic programming promotes a programming method which is parametric over types [Mee96, JJ96]. Again nonuniform recursion is not yet included in polytypic programming. Recall that the algebras of the present work can be instantiated by types, so they can be seen 9 as first non uniform polytypic programs. The paper on nested data types [BM98] addresses the problem of non uniform recursion ....
Johan Jeuring and Patrik Janson. Polytypic programming. In J. Launchbury, Erik Meijer, and T. Sheard, editors, Advances in Functional Programming, pages 68--111, Olympia, WA, USA, 1996. Springer Verlag. LNCS 1129.
....attributes play a double role: they are synthesized (like the height ofa row ) but once their value has been computed they can be used in a subsequent computation; thus acting as inherited attributes. Furthermore, the program can be generalized rather straightforw ardly to a polytypic function [3] because the constructors are general. Although not presented here, the tupling operator tuple list can be defined for any arbitrary data type constructor f. As a final remarkw e notice that probably the hardest part ofthe derivation w as the design ofthe combinators , fork and decons, ....
Jeuring J. and Jansson P. Polytypic programming. In Meijer E. Launchbury J. and Sheard T., editors, Advanced Funct4211 Programming: SecondInt6 - nat7121 School, number 1129 in Lecture Notes in Computer Science, pages 68--114.
....code is inconvenient, but keeps the preprocessor simple while allowing the programmer to use the full Haskell language. 1.7.3 Polytypic Programming Although Derive was not written with polytypic programming in mind, it has been found that it has the required features. Polytypic programming [15] is the use of functions that can operate upon any data structure, regardless of its shape. For example, while a conventional map applies a function to elements of a list, a polytypic map applies a function to every element of any datatype. A polytypic map has similar behaviour whether the ....
Johan Jeuring and Patrik Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Tutorial Text 2nd Intl. School on Advanced Functional Programming, Olympia, WA, USA, 26-30 Aug 1996, volume 1129 of Lecture Notes in Computer Science, pages 68-114. SpringerVerlag, Berlin, 1996.
No context found.
Johan Jeuring and Patrik Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Tutorial Text 2nd International School on Advanced Functional Programming, Olympia, WA, USA, volume 1129 of Lecture Notes in Computer Science, pages 68--114. Springer-Verlag, 1996.
....the same way we can generalise the function map : a b) List a List b into a function map : a b) d a d b, so that it too works for trees and other similar datatypes. We call such functions polytypic functions. For an introduction to the basic ideas of polytypic functions see (Jeuring Jansson, 1996) and for a more theoretical treatment of polytypism (Bird et al. 1996) and (de Moor, 1994) In this paper we show that ffl by parametrising the unification algorithm by the datatype for terms, we can separate the core of the algorithm from the parts depending on the specific datatype, and ffl ....
Jeuring, J., & Jansson, P. (1996). Polytypic programming. Pages 68--114 of: Launchbury, J., Meijer, E., & Sheard, T. (eds), Advanced Functional Programming, Second International School. Springer-Verlag. LNCS 1129.
....function that uses the parallel innermost rewriting strategy. We have chosen the parallel innermost rewriting strategy because this lets us transform the rewriting function into an asymptotically optimal solution. The results in this paper improve upon our earlier work on polytypic rewriting [8] in two fundamental ways. Firstly, the program uses a term interface that hides the polytypic part from the rest of the program. The term interface, which appeared in the types in the previous subsection as class 2 Term , is a framework for polytypic programming on terms. Several functions are ....
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Advanced Functional Programming '96, volume 1129 of LNCS, pages 68-114. Springer-Verlag, 1996.
No context found.
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Tutorial Text: 2nd Int. School on Advanced Functional Programming, volume 1129, pages 68--114. Springer-Verlag, Berlin, 1996.
No context found.
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, LNCS 1129: Advanced Functional Programming, pages 68--114. Springer-Verlag, 1996.
No context found.
Jeuring, J. and P. Jansson, Polytypic programming, in: J. Launchbury, E. Meijer and T. Sheard, editors, Advanced Functional Programming, Second International School (1996), pp. 68--114, LNCS 1129.
No context found.
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, 2nd Int. School on Advanced Functional Programming, Olympia, WA, USA, 26--30 Aug 1996.
No context found.
J. Jeuring and Patrik Jansson. Polytypic Programming. In Advanced Functional Programming, LNCS 1129. Springer-Verlag, 1996.
No context found.
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, 2nd Int. School on Advanced Functional Programming, Olympia, WA, USA, 26--30 Aug 1996.
No context found.
J. Jeuring and P. Jansson. Polytypic Programming. In T. Launchbury, E. Meijer, and T. Sheard, editors, Advanced Functional Programming, Lecture Notes in Computer Science, pages 68--114. Springer-Verlag, 1996.
No context found.
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, 2nd Int. School on Advanced Functional Programming, Olympia, WA, USA, 26--30 Aug 1996.
No context found.
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, 2nd Int. School on Advanced Functional Programming, Olympia, WA, USA, 26--30 Aug 1996.
First 50 documents Next 50
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC