Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Parametric polymorphism for XML
Hosoya H., Frisch A., Castagna G.  Principles of programming languages (Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Long Beach, California, USA, Jan 12-14, 2005)50-62.2005.Type:Proceedings
Date Reviewed: Apr 7 2005

Polymorphism selectively and safely weakens a programming language’s type system when the difference between types isn’t important. Extensible Markup Language (XML) is a programming language with one operation: conformance to a schema, or document type definition (DTD). XML can be made polymorphic by assigning the string or binary data type to the portions of an XML document irrelevant to conformance. However, when XML is embedded in a programming language with a type system more advanced than XML’s, simple approaches to polymorphism are inadequate, particularly with respect to maintaining type safety.

Extensions of polymorphic type systems to XML data get confounded by the complexity of XML data and the conformance operator, resulting in type systems that are functionally limited and analytically expensive. The authors’ insight into this problem is to base type checking on data structure, rather than data operations, by using markings, which abstract XML document structure. Types can be checked using markings, insuring that the supplied data structure has the components required by the specified data structure. Under a set of reasonable but limiting technical assumptions, the type checking algorithms can be rendered as automata, suggesting that marking-based type checking is efficient.

This is not a paper for XML practitioners, not even those interested in having polymorphism in XML proper. By embedding XML in a functional language, the authors move their work into the realm of the language theoreticians, and it is not clear whether the work will find its way back to the practitioner’s realm in a useful form.

Reviewer:  R. Clayton Review #: CR131085 (0602-0173)
Bookmark and Share
 
Polymorphism (D.3.3 ... )
 
 
Data Types And Structures (D.3.3 ... )
 
 
Type Structure (F.3.3 ... )
 
 
Language Constructs and Features (D.3.3 )
 
Would you recommend this review?
yes
no
Other reviews under "Polymorphism": Date
Formalization of generics for the .NET common language runtime
Yu D., Kennedy A., Syme D. ACM SIGPLAN Notices 39(1): 39-51, 2004. Type: Article
Mar 10 2004
Polymorphic typed defunctionalization
Pottier F., Gauthier N. ACM SIGPLAN Notices 39(1): 89-98, 2004. Type: Article
Mar 11 2004
Safe instantiation in generic Java
Allen E., Cartwright R. Science of Computer Programming 59(1-2): 26-37, 2006. Type: Article
Jul 19 2006
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy