Download An Eclipse-Based Integrated Development Environment for Curry

Transcript
Contents
List of Figures
ix
List of Tables
xi
Listings
xiii
1 Introduction
1
2 Curry
2.1 Main Features of Curry . . . . . . . . . .
2.1.1 Overview . . . . . . . . . . . . .
2.1.2 Predefined Types and Operations
2.1.3 Functions . . . . . . . . . . . . .
2.1.4 Pattern Matching . . . . . . . . .
2.1.5 Conditions . . . . . . . . . . . . .
2.1.6 As-Patterns . . . . . . . . . . . .
2.1.7 Local Declarations . . . . . . . .
2.1.8 Constraints and Equality . . . . .
2.1.9 Higher-order Features . . . . . . .
2.1.10 Layout . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
3
3
3
4
4
5
5
6
6
7
7
8
.
.
.
.
.
.
.
.
11
11
15
15
15
18
19
19
20
4 Foundations
4.1 Theoretical Foundations . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1 Language Recognition Workflow . . . . . . . . . . . . . . . . . . .
21
21
21
3 Requirements and Specification
3.1 Existing Tools . . . . . . . . . . . .
3.2 The Curry IDE . . . . . . . . . . .
3.2.1 General Requirements . . .
3.2.2 Curry-Specific Requirements
3.3 Integration of Curry Analysis Tools
3.3.1 Curry Analyses . . . . . . .
3.3.2 Protocol . . . . . . . . . . .
3.3.3 Integration . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
v