Publication View

Views for Standard ML (1998)

Abstract
In Standard ML, as in many other languages, programmers are often confronted with an unpleasant choice between pattern matching and abstraction. Because pattern matching can only be performed on concrete datatypes, programmers must often sacrifice either the convenience of pattern matching or the engineering benefits of abstraction. Views relieve this tension by allowing pattern matching on abstract datatypes. We propose a modest extension of Standard ML with views and define its semantics via a source-to-source translation back into Standard ML without views. We claim no particular technical innovation; rather, we have attempted to engineer a solution that blends as seamlessly as possible with the rest of the language, including the module system and the stateful features of the language. 1 Introduction The convenience of pattern matching is one of the most seductive aspects of languages like Standard ML [6]. Not until the newcomer tries to write large programs does she encounter the...

Publication details
Download http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.47.3623
Source http://www.cs.columbia.edu/~cdo/ml98views.ps.gz
Contributors CiteSeerX
Repository CiteSeerX - Scientific Literature Digital Library and Search Engine (United States)
Type text
Language English
Relation 10.1.1.14.3532, 10.1.1.50.8659, 10.1.1.50.5589, 10.1.1.132.2305, 10.1.1.88.5295, 10.1.1.18.1149, 10.1.1.104.1972, 10.1.1.61.3043, 10.1.1.73.2770, 10.1.1.80.3838, 10.1.1.81.1573, 10.1.1.81.2414, 10.1.1.88.9256, 10.1.1.96.860, 10.1.1.121.573, 10.1.1.128.2669, 10.1.1.132.9179, 10.1.1.35.8851, 10.1.1.38.5482