Why functional programming matters
The Computer Journal - Special issue on Lazy functional programming
CML: A higher concurrent language
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Report on the programming language Haskell: a non-strict, purely functional language version 1.2
ACM SIGPLAN Notices - Haskell special issue
Extending a functional programming system for embedded applications
Software—Practice & Experience
Concurrent programming in ERLANG (2nd ed.)
Concurrent programming in ERLANG (2nd ed.)
Proving the correctness of reactive systems using sized types
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Region-based memory management
Information and Computation
Lava: hardware design in Haskell
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Recursion and dynamic data-structures in bounded space: towards embedded ML programming
Proceedings of the fourth ACM SIGPLAN international conference on Functional programming
Proof, language, and interaction
Guest Editorial: A Review of Worst-Case Execution-TimeAnalysis
Real-Time Systems - Special issue on worst-case execution-time analysis
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
Automated discovery of scoped memory regions for real-time Java
Proceedings of the 3rd international symposium on Memory management
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The Definition of Standard ML
Static prediction of heap space usage for first-order functional programs
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Trends in functional programming
Trends in functional programming
Elementary Strong Functional Programming
FPLE '95 Proceedings of the First International Symposium on Functional Programming Languages in Education
Reliable and Precise WCET Determination for a Real-Life Processor
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Pipeline Modeling for Timing Analysis
SAS '02 Proceedings of the 9th International Symposium on Static Analysis
A type system for bounded space and functional in-place update
Nordic Journal of Computing
Combining Abstract Interpretation and ILP for Microarchitecture Modelling and Program Path Analysis
RTSS '98 Proceedings of the IEEE Real-Time Systems Symposium
WCET Analysis of Probabilistic Hard Real-Time Systems
RTSS '02 Proceedings of the 23rd IEEE Real-Time Systems Symposium
Microprocessor Specification in Hawk
ICCL '98 Proceedings of the 1998 International Conference on Computer Languages
Hume: a domain-specific language for real-time embedded systems
Proceedings of the 2nd international conference on Generative programming and component engineering
Applying Static WCET Analysis to Automotive Communication Software
ECRTS '05 Proceedings of the 17th Euromicro Conference on Real-Time Systems
Predictable space behaviour in FSM-Hume
IFL'02 Proceedings of the 14th international conference on Implementation of functional languages
Portable worst-case execution time analysis using Java byte code
Euromicro-RTS'00 Proceedings of the 12th Euromicro conference on Real-time systems
Inferring cost equations for recursive, polymorphic and higher-order functional programs
IFL'03 Proceedings of the 15th international conference on Implementation of Functional Languages
A dependently typed framework for static analysis of program execution costs
IFL'05 Proceedings of the 17th international conference on Implementation and Application of Functional Languages
Safe compositional network sketches: formal framework
Proceedings of the 13th ACM international conference on Hybrid systems: computation and control
Hume box calculus: robust system development through software transformation
Higher-Order and Symbolic Computation
Harnessing parallelism in FPGAs using the hume language
Proceedings of the 1st ACM SIGPLAN workshop on Functional high-performance computing
Hi-index | 0.00 |
This paper describes ongoing work aimed at the construction of formal cost models and analyses that are capable of producing verifiable guarantees of resource usage (space, time and ultimately power consumption) in the context of real-time embedded systems. Our work is conducted in terms of the domain-specific language Hume, a language that combines functional programming for computations with finite-state automata for specifying reactive systems. We describe an approach in which high-level information derived from source-code analysis can be combined with worst-case execution time information obtained from abstract interpretation of low-level binary code. This abstract interpretation on the machine-code level is capable of dealing with complex architectural effects including cache and pipeline properties in an accurate way.