Abstract
This chapter describes Hume: a functionally-based language for programming with bounded resource usage, including time and space properties. The purpose of the Hume language design is to explore the expressibility/costability spectrum in resource-constrained systems, such as real-time embedded or control systems. It is unusual in being based on a, combination of lambda-calculus and finite state machine notions, rather than the more usual propositional logic, or flat finite-state-machine models. The use of a strict, purely functional programming notation allows the construction of a strong cost model for expressions, which can then be embedded into a simple cost model for processes.
In this chapter, we introduce Hume, describe the Hume Abstract Machine implementation, and show how a high-level cost model can be constructed that relates costs from the abstract machine to Hume source programs. We illustrate our approach with an example adapted from the literature: a simple vending machine controller.
Original language | English |
---|---|
Title of host publication | Central European Functional Programming School. First Summer School, CEFP 2005, Budapest, Hungary, July 4-15, 2005, Revised Selected Lectures |
Editors | Z Horvath |
Publisher | Springer |
Pages | 100-134 |
ISBN (Print) | 3-540-46843-9 |
DOIs | |
Publication status | Published - 2006 |
Publication series
Name | Lecture Notes in Computer Science |
---|---|
Volume | 4164 |
ISSN (Print) | 0302-9743 |
Keywords
- LANGUAGE
- SYSTEMS