
Trends in Functional Programming 4.
Title:
Trends in Functional Programming 4.
Author:
Gilmore, Stephen.
ISBN:
9781841509150
Personal Author:
Edition:
1st ed.
Physical Description:
1 online resource (137 pages)
Series:
Trends in Functional Programming Series
Contents:
Front Cover -- Preliminary Pages -- Contents -- PREFACE -- Chapter 1 Is It Time for Real-Time Functional Programming? -- 1.1 INTRODUCTION -- 1.2 WHAT IS REAL-TIME PROGRAMMING? -- 1.2.1 The Importance of Real-Time Systems -- 1.2.2 Essential Properties of Real-Time Languages -- 1.3 LANGUAGES FOR PROGRAMMING REAL-TIME SYSTEMS -- 1.3.1 Using General Purpose Languages for Real-Time Programming -- 1.3.2 Domain-Specific Languages for Real-Time Programming -- 1.3.3 Functional Language Approaches -- 1.4 BOUNDING TIME AND SPACE USAGE -- 1.4.1 Real-Time Dynamic Memory Management -- 1.4.2 Static Analyses for Bounding Memory Usage -- 1.4.3 Worst Case Execution Time Analysis -- 1.4.4 Syntactically Restricted Functional Languages -- 1.5 FUNCTIONAL LANGUAGES FOR RELATED PROBLEM AREAS -- 1.6 THE HUME LANGUAGE -- 1.6.1 Real Time and Space Behaviour of FSM-Hume Programs -- 1.7 THE CHALLENGES -- 1.8 CONCLUSION -- Chapter 2 FSM-Hume is Finite State -- 2.1 INTRODUCTION -- 2.2 SINGLE BOX FSM-HUME PROGRAMS ARE FINITE STATE -- 2.3 MULTI-BOX FSM-HUME PROGRAMS ARE FINITE STATE -- 2.4 EXAMPLE: VEHICLE SIMULATION -- 2.4.1 Single-box FSM-Hume -- 2.5 CONCLUSION -- Chapter 3 Camelot and Grail: Resource-Aware Functional Programming for the JVM -- 3.1 INTRODUCTION -- 3.2 CAMELOT -- 3.2.1 Basic Features of Camelot -- 3.2.2 Diamonds and Resource Control -- 3.3 GRAIL -- 3.3.1 The Grail Type System -- 3.3.2 Compilation of Grail -- 3.4 COMPILING CAMELOT TO GRAIL -- 3.4.1 Representing Data -- 3.4.2 Compilation of Programs -- 3.4.3 Initial Transformations -- 3.4.4 Compilation of Expressions -- 3.5 PERFORMANCE -- 3.6 FINAL REMARKS -- Chapter 4 O'Camelot: Adding Objects to a Resource-Aware Functional Language -- 4.1 INTRODUCTION -- 4.2 CAMELOT -- 4.3 EXTENSIONS -- 4.4 TYPING -- 4.5 TRANSLATION -- 4.6 OBJECTS AND RESOURCE TYPES -- 4.7 RELATEDWORK -- 4.8 CONCLUSION.
Chapter 5 Static Single Information from a Functional Perspective -- 5.1 INTRODUCTION -- 5.2 RELATEDWORK -- 5.3 STATIC SINGLE INFORMATION -- 5.4 TRANSFORMATION -- 5.5 OPTIMISTIC VERSUS PESSIMISTIC -- 5.6 CONVERTING FUNCTIONAL PROGRAMS BACK TO SSI -- 5.7 MOTIVATION -- 5.8 CONCLUSIONS -- Chapter 6 Implementing Mobile Haskell -- 6.1 INTRODUCTION -- 6.2 MOBILE HASKELL -- 6.2.1 Communication Primitives -- 6.2.2 Discovering Resources -- 6.2.3 Remote Thread Creation -- 6.2.4 A Simple Example -- 6.3 IMPLEMENTATION DESIGN -- 6.3.1 Introduction -- 6.3.2 Evaluating Expressions before Communication -- 6.3.3 Sharing Properties -- 6.3.4 MChannels -- 6.4 THE IMPLEMENTATION -- 6.4.1 Packing Routines -- 6.4.2 Communicating User Defined Types -- 6.4.3 Evaluating Expressions -- 6.4.4 Implementation of MChannels -- 6.5 INITIAL EVALUATION -- 6.6 RELATED WORK -- 6.7 CONCLUSIONS AND FUTUREWORK -- Chapter 7 Testing Scheme Programming Assignments Automatically -- 7.1 INTRODUCTION -- 7.2 WebAssign AND AT(x) -- 7.3 A SAMPLE SESSION -- 7.4 STRUCTURE OF THE AT(x) FRAMEWORK -- 7.4.1 Components of the AT(x) System -- 7.4.2 Communication Interface of the Analysis Component -- 7.4.3 Function and Implementation of the Interface Component -- 7.4.4 Global Security Issues -- 7.5 THE CORE ANALYSIS COMPONENT -- 7.5.1 Requirements on the Analysis Components -- 7.5.2 Analysis of Scheme Programs -- 7.6 IMPLEMENTATION AND EXPERIENCES -- 7.7 RELATEDWORK -- 7.8 CONCLUSIONS AND FURTHERWORK -- Chapter 8 Testing Reactive Systems with GAST -- 8.1 INTRODUCTION -- 8.2 OVERVIEW OF G∀ST -- 8.2.1 Testing and Results -- 8.2.2 Evaluating Test Results -- 8.2.3 Logical Operators in G∀ST -- 8.2.4 Automatic Generation of Test Values -- 8.3 SPECIFYING REACTIVE SYSTEMS IN G∀ST -- 8.3.1 Labelled Transition Systems -- 8.3.2 Example: Conference Protocol -- 8.3.3 Executing a Deterministic LTS.
8.3.4 The Implementation Under Test -- 8.3.5 Testing the Conference Protocol -- 8.3.6 Implementations with Other Types -- 8.4 BETTER TEST DATA GENERATION FROM THE LTS -- 8.5 FUNCTIONAL AND NONDETERMINISTIC SPECIFICATIONS -- 8.6 TESTING NONDETERMINISTIC SYSTEMS -- 8.7 RELATEDWORK -- 8.8 CONCLUSION.
Abstract:
This book collects the latest research developments in the use of functional programming languages. The contents highlight major research goals and engineering concerns in the subject.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Genre:
Electronic Access:
Click to View