
Trends in Functional Programming
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions

Content
- Title
- Preface
- Organization
- Table of Contents
- Evaluating Call-by-Need on the Control Stack
- Implementing Call-by-Need
- The Call-by-Need -Calculus, the de Bruijn Version
- Standard Reduction Machine
- The CK+ Machine
- CK+ Machine States
- Renaming Environment
- Continuations and the Continuation Stack
- Maintaining the Continuation Stack
- Relating Machine States to Terms
- CK+ Machine State Transitions
- Dealing with Answers
- Correctness
- Stack Compacting
- Related Work and Conclusion
- References
- Typing Coroutines
- Introduction
- CorDuroy
- Examples
- Operational Semantics
- Type System
- Soundness
- Preservation
- Progress
- Related Work
- Conclusion
- References
- An Expression Processor: A Case Study in Refactoring Haskell Programs
- Introduction
- Structural and Data-Type Refactorings
- Folding
- Merging
- Adding a Constructor to a Data Type
- Removing a Constructor from a Data Type
- Adding or Removing a Field to or from a Constructor
- Introduce Pattern Matching over an Argument Position
- Refactoring an Expression Processor
- Stage 1: Initial Implementation
- Stage 2: Introduce Binary Operators
- Stage 3: Generalisation
- Stage 4: Introduce Variables
- Stage 5: Merging
- Related Work
- Conclusions and Future Work
- Implementation and Design Difficulties
- Future Work
- References
- Static Balance Checking for First-Class Modular Systems of Equations
- Introduction
- Modular Systems of Equations
- Equation System Basics
- Abstraction over Systems of Equations
- FHM and Hydra
- The Type System
- Overview
- Generating Constraints
- Formalising the Type System
- Related Work
- Modelica
- Bunus and Fritzon
- Structural Constraint Delta
- Structural Types
- Future Work
- Conclusion
- References
- Graphical and Incremental Type Inference: A Graph Transformation Approach
- Introduction
- NiMo Language Elements
- Interfaces and Connections
- Net-Process Definitions
- Partial Application and Production in HO
- Graphical Typing
- Type Graph and Type Descriptors
- Type Graph Unification
- Structural Unification
- Non Structural Unification
- Incremental Type Inference for Nets
- Functional and Non-functional Components
- Net Type Operators
- The Type Inference Algorithm
- An Example
- A Second Example
- Related Work and Final Remarks
- References
- Hygienic Macros for ACL2
- Unhygienic Macros Are Not Abstractions
- The Meaning of Hygiene for ACL2
- Design Goals
- Reinterpreting ACL2
- Hygienic Macro Expansion
- Evaluating Hygiene
- Related Work and Conclusions
- References
- What's the Matter with Kansas Lava?
- Introduction
- What is Kansas Lava?
- In This Paper
- Testing Functional Circuits
- Observing Intermediate Values
- Circuit Instrumentation Using Probes
- Implementation
- Implementing Probes on Values
- Implementing Probes on Functions
- Testing the Deep Embedding
- Handling Large Circuits
- Extracting Subcircuits
- Locating Errors Automatically
- Related Work
- Conclusion and Future Work
- References
- Types and Type Families for Hardware Simulation and Synthesis The Internals and Externals of Kansas Lava
- Introduction
- Kansas Lava
- Sequential and Combinatorial Circuits
- Commutable Functors and Signals
- Phantom Types for Clock Domains
- Venturing into the Unknown
- Protocols for Signals
- Related Work
- Conclusions
- References
- Testing with Functional Reference Implementations
- Introduction
- STV Election Rules
- Specification of the Scottisch STV
- Format of the Test Cases
- Example Election
- Paradoxes
- Testing Election Software
- The Notion of Equivalence of Election Results
- Test Suites
- Test Suite Generation
- Implementations Under Test
- The Functional Reference Implementation
- Numbers with Five Digit Precision
- Administration of Candidates
- Size of Executable
- Issues Found
- Test Results
- The Law
- The Reference Implementation
- The IUTs
- Execution Speed
- Choices
- Vote Transfer Tables
- Conclusions
- References
- Every Animation Should Have a Beginning, a Middle, and an End
- Introduction
- The Active Language
- ChalkBoard
- Active Combinators
- Case Study
- Stage 1: Building Animation Pieces
- Stage 2: Combining Animation Pieces
- Related Work
- Conclusions and Future Work
- References
- Functional Video Games in the CS1 Classroom
- Introduction
- Introduction to Computer Science and Programming
- Topics Covered in CS1 and CS2 at Seton Hall University
- The Functional and HtDP Advantages
- The Functional Advantage
- The HtDP Advantage
- Video Games in CS1
- Aliens Attack v0.0
- Aliens Attack v0.1
- Aliens Attack v0.2
- Aliens Attack v0.3
- Aliens Attack v0.4
- Related Approaches
- Concluding Remarks
- References
- ComputErl - Erlang-Based Framework for Many Task Computing
- Introduction
- Goals and Requirements of ComputErl
- State of the Art
- Main Concepts of ComputErl
- Supported Computation Models
- Master-Slave
- Map-Reduce
- Pipeline
- Sample Applications
- Sleep Benchmark
- Mandelbrot Set Generation
- Distributed Grep
- Bioinformatics Application
- Conclusions and Future Work
- References
- Monad Factory: Type-Indexed Monads
- Introduction
- Problem
- Type-Indexed Monads
- Creating Type-Indexes
- Implementation
- Separation of Type-Indexed Monads
- Usage
- Related Work
- Conclusions and Future Work
- References
- Author Index
System requirements
File format: PDF
Copy protection: Watermark-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use the free software Adobe Reader, Adobe Digital Editions, or any other PDF viewer of your choice (see eBook Help).
- Tablet/Smartphone (Android; iOS): Install the free app Adobe Digital Editions or another reading app for eBooks, e.g., PocketBook (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Watermark-DRM, a „soft” copy protection. This means that there are no technical restrictions to prevent illegal distribution. However, there is a personalised watermark embedded in the eBook that can be used to identify the purchaser of the eBook in the event of misuse and to provide evidence for legal purposes.
For more information, see our eBook Help page.