We're sorry. An error has occurred
Please cancel or retry.
Trends in Functional Programming Volume 3
Some error occured while loading the Quick View. Please close the Quick View and try reloading the page.
Couldn't load pickup availability
- Format:
-
05 January 2013

This book brings together leading researchers and practitioners in the field of functional programming. The work presented here covers many aspects of the field, including:
- language design
- proof and transformation
- semantics and models
- implementation
- type systems
- parallelism and distribution
- performance modelling and profiling
- programming methodologies
The Editors introduce a wide-ranging set of articles, arranged by general subject area. Short overviews bring strong thematic links between individual articles, including:
- applications
- implementation techniques
- parallel systems and programming
- memory architectures
- type systems
The articles themselves are drawn from the series of Scottish Functional Programming Workshops. Central Scotland has been highly influential in the development of functional programming with notable contributions that include the design, implementation and use of the SASL, Standard ML and Haskell languages.
The Workshops provide an international forum, linking a vibrant Scottish core with the wider community. As a product of this forum, the book brings a broad perspective on current research trends and practice in the field.
COMPUTERS / General, Computer science, COMPUTERS / Programming / General
1 Haskell: Language for Business Systems 1
Dan Russell, Dominic Steinitz and Chris Reade
1.1 Introduction 1
1.2 Background and Related Work 2
1.3 LDAP 3
1.4 The LDAP Client 5
1.5 Using the LDAP API 9
1.6 Conclusions and Further Work 11
2 Infinite Pretty-printing in eXene 13
Allen Stoughton
2.1 Pretty-printing with Elision 13
2.2 Infinite Pretty-printing in eXene 15
2.3 Flexible Text Values 15
2.4 Pretty-printing Trees 16
2.5 The eXene Flexible Text Widget 20
2.6 Pretty-Printing Examples 21
2.7 Conclusion
3 Extending Higher-Order Deforestation: Transforming Programs to
Eliminate Even More Trees 25
Geoffrey Hamilton
3.1 Introduction 25
3.2 Language 27
3.3 Extended Higher-Order Treeless Form 28
3.4 The Extended Higher-Order Deforestation Algorithm 32
3.5 The Extended Higher-Order Deforestation Theorem 34
3.6 Conclusion 35
4 BSP in a Lazy Functional Context 37
Quentin Miller
4.1 Introduction 37
4.2 BSP Computation 38
4.3 A Vector Calculus 39
4.4 The Structure of BSP-Haskell 40
4.5 Broadcast Functions 41
4.6 Implementations 42
4.7 Cost Predictions and Measurements 46
4.8 Summary and Further Research 47
5 Deriving Non-Hierarchical Process Topologies 51
Ricardo Peña, Fernando Rubio, Clara Segura
5.1 Introduction 51
5.2 Eden 52
5.3 Methodology to Derive Non-Hierarchical Topologies 54
5.4 Examples of Non-Hierarchical Topologies 56
5.5 Conclusion 61
6 Load Balancing in a Parallel Graph Reducer 63
Hans-Wolfgang Loidl
6.1 Introduction 63
6.2 GUM: A Parallel Graph Reducer 64
6.3 Accessing the Load Distributer in GUM 66
6.4 Related Work 72
6.5 Conclusions 73
7 Paging in a Distributed Virtual Memory 75
Marco T. Morazán, Douglas R. Troeger, Myles Nash
7.1 Introduction 75
7.2 Related Work 76
7.3 The MT System 78
7.4 Virtual Memory Performance of the MT Heap 81
7.5 Explaining the Competitiveness of FIFO 83
7.6 Concluding Remarks 84
8 How to Repair Type Errors Automatically 87
Bruce McAdam
8.1 Introduction- Error Messages 87
8.2 The Theory Behind this System 89
8.3 Implementing the Theory 90
8.4 Performance and Testing 95
8.5 Conclusions 97
9 The Dual of Substitution is Redecoration 99
Tarmo Uustalu, Varmo Vene
9.1 Introduction 99
9.2 Monads 101
9.3 Comonads 101
9.4 Monads of Trees and Cotrees 102
9.5 Comonads of (Co)trees 105
9.6 Conclusion and Future Work 109
10 Function Types in Complete Type Inference 111
Manfred Widera, Christoph Beierle
10.1 Introduction to Complete Type Checking 111
10.2 The Type Language 115
10.3 The Inappropriateness of Function Types 115
10.4 The New Function Type Constructor 116
10.5 Conclusion 121