
Practical Aspects of Declarative Languages
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 Page
- Preface
- Organization
- Table of Contents
- Invited Talks
- Intel$$ CoreTM i7 Processor Execution Engine Validation in a Functional Language Based Formal Framework
- References
- Learning Language from Its Perceptual Context
- References
- Message-Passing and Mobile Networks
- Detection of Asynchronous Message Passing Errors Using Static Analysis
- Introduction
- Erlang and Dialyzer
- Message Passing in Erlang
- The Analysis
- Collecting Information
- Constructing the Communication Graph
- Detecting Message Passing Errors
- Some Optimizations
- False Alarms and Their Avoidance
- Experimental Evaluation
- Related Work
- Concluding Remarks and Future Work
- References
- Combinators for Message-Passing in Haskell
- Introduction
- Background: Communicating Haskell Processes
- Barriers and Enrolling
- Motivating Example: Blood Clotting Simulation
- Wiring: Process Composition
- Simple Composition Operator
- Richer Composition Operator
- Capturing Common Topologies
- Improved Process Wiring: Blood Clotting Example
- Compositional Wiring
- The Composed Monad
- Composed Wiring Functions
- Further Improved Process Wiring: Blood Clotting Example
- Related Work
- Conclusions
- References
- Analysing a Publish/Subscribe System for Mobile Ad Hoc Networks with ProbLog
- Introduction
- Problem Statement
- ProbLog
- Fadip Model in ProbLog
- Analysing the Model
- Conclusions
- References
- Profiling and Implementation
- Profiling for Run-Time Checking of Computational Properties and Performance Debugging in Logic Programs
- Introduction
- A Cost Center-Based Approach to Profiling
- Integrating Profiling with Verification and Debugging
- Proposing New Computational Properties
- Program Transformation for Profiling
- Automatic Performance Bottleneck Detection
- Experimental Results
- Discussion and Future Work
- References
- Plato: A Compiler for InteractiveWeb Forms
- Introduction
- Overview
- Logical Foundations of Web Forms
- plato
- Opportunities, Challenges, and Design Decisions
- Architecture
- Algorithms
- Strict Implication
- Minimal Inconsistencies
- Evaluation
- Analytical
- Empirical
- Related Work
- Conclusion and Future Work
- References
- On the Portability of Prolog Applications
- Introduction
- Portability Approaches and Related Work
- Prolog Portability Status
- The YAP/SWI-Prolog Approach
- The SWI-Prolog/YAP Portability Framework
- Running SWI-Prolog Packages in YAP
- A First Case-Study: Portable Constraint Libraries
- A Second Case-Study: The Alpino Dependency-Tree Parser Suite
- Conclusions
- References
- Grammars, Merging and Constraint Programming
- Explicitly Recursive Grammar Combinators A Better Model for Shallow Parser DSLs
- Introduction
- Arithmetic Expressions
- Parser Combinators
- ?-Regular Grammars Considered Harmful
- Toward Context-Free Grammars
- An Explicitly Recursive Representation
- Representing Non-terminals
- Production Rules
- A Different Take on Recursion
- Semantic Value Family Polymorphism
- So What Do We Get?
- The Proof of the Pudding
- Features
- Limitations
- Related Work
- Parser Combinators
- Squiggolist Attribute Grammars
- Observable Sharing
- Finally Tagless DSLs
- Conclusion
- References
- Declarative Belief Set Merging Using Merging Plans
- Introduction
- Preliminaries
- Belief Set Merging Using Merging Plans
- Merging Plans and Tasks
- The MELD System
- Belief Merging in Action
- Evaluation and Experiments
- Related Work and Conclusion
- References
- Using Constraints for Intrusion Detection: The NeMODe System
- Introduction
- State of the Art
- Intrusion Detection Systems
- Constraint Programming
- Domain Specific Languages
- Intrusion Detection with Constraints
- NeMODe - A DSL to Describe Network Signatures
- NeMODe Specification
- Examples
- Code Generation
- Experimental Results
- Evaluation
- Conclusions and Future Work
- References
- Language Extensions and Tools
- A Declarative API for Particle Systems
- Introduction
- Particle Systems
- A Simple Particle System
- Specifying Particle Systems
- Particle-System Combinators
- Variables
- Domains
- Emitters
- Actions
- Renderers
- A Complete Example
- Implementation
- Internal Representation
- Optimizations
- Targetting GPUs
- Related Work
- Conclusion
- Future Work
- References
- Integrating XPath with the Functional-Logic Language Toy
- Introduction
- Preliminaries
- The Functional-Logic Language TOY
- The XML Query Language XPath
- XPath Queries in TOY
- The Type xPath
- Loading XML Documents and Combining XPath Queries
- Basic Axes and Tests
- Abbreviations
- Filters
- Generating Test-Cases for XPath Expressions
- Higher Order Patterns
- Validating XPath Queries
- Reverse Axes
- Conclusions
- References
- Sloth - A Tool for Checking Minimal-Strictness
- Introduction
- Least-Strictness
- Sequentiality and Minimal-Strictness
- Case Studies
- Directions for Future Research
- References
- Concurrent and Parallel Programming
- The F# Asynchronous Programming Model
- Introduction
- An Overview of F# Asynchronous Programming
- Writing, Composing and Running Asynchronous Computations
- Asynchronous Functions
- Exception Handling and Resource Compensation
- Cancellation
- Semantics
- Patterns for Concurrent and Reactive Programming
- Parallel Composition
- Reactive Agents Using State Machines
- Reactive User Interface Programming
- Implementation
- Some Usability and Performance Indicators
- Summary
- Related Work
- References
- Kanor A Declarative Language for Explicit Communication
- Introduction
- Motivation
- Exploiting Communication Knowledge
- The Kanor Language
- Evaluation Rules
- Core Algorithms
- Implementation
- Compiler
- Runtime
- Performance
- Related Work
- Conclusion and Future Work
- References
- Joinads: A Retargetable Control-Flow Construct for Reactive, Parallel and Concurrent Programming
- Introduction
- Computation Expressions
- Joinads by Example
- Reactive Programming with Events
- Concurrent Programming with Joins
- Parallel Programming with Futures
- A Language Extension for Joinads
- Introducing Operations
- Syntax Extension
- Translation Semantics
- Reasoning About Joinads
- Merge Operation Laws
- Choose Operation Laws
- Related Notions of Computations
- Relation with Monads
- Commutative Monads
- Related Work
- Conclusions
- References
- Event Processing and Reactive Programming
- Results on Out-of-Order Event Processing
- Introduction
- Motivating Example
- Event Processing in ETALIS
- In-Order Event Processing in ETALIS
- Out-of-Order Events
- Out-of-Order Event Processing in ETALIS
- Windowing and Pruning the Outdated Events
- Pushed Constraints
- General and Pattern-Based Garbage Collection
- Performance Evaluation
- Conclusion
- References
- Nettle: Taking the Sting Out of Programming Network Routers
- Introduction
- Overall Approach
- Functional Reactive Programming
- FRP for OpenFlow Control
- Basic Event Handling and Switch Commands
- Programming the Flow Table
- Learning Switch
- Declarative Routing
- Time-Varying Quantities
- Discussion and Related Work
- References
- Determining Actual Response Time in P-FRP
- Introduction
- Contributions
- Basic Concepts and Execution Model of P-FRP
- Basic Concepts
- Execution Model and Assumptions
- Computing Actual Response Time in the Preemptive Model
- Gap-Enumeration Method
- Algorithm to Determine Actual Response Time
- Gap-Enumeration with Dynamic Window Size
- Gap-Transformation Function
- Gap-Search Function
- Analysis
- 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.