Views: a way for pattern matching to cohabit with data abstraction
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Symbolic Boolean manipulation with ordered binary-decision diagrams
ACM Computing Surveys (CSUR)
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Lisp and Symbolic Computation - Special issue on state in programming languages (part I)
ISCA '96 Proceedings of the 23rd annual international symposium on Computer architecture
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
H/Direct: a binary foreign language interface for Haskell
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Lava: hardware design in Haskell
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
An Embedded Modeling Language Approach to Interactive 3D and Multimedia Animation
IEEE Transactions on Software Engineering
The next 700 programming languages
Communications of the ACM
The IA-64 Architecture at Work
Computer
Formal Verification of a Pipelined Microprocessor
IEEE Software
From Transistors to Computer Architecture: Teaching Functional Circuit Specification in Hydra
FPLE '95 Proceedings of the First International Symposium on Functional Programming Languages in Education
Reasoning About Pipelines with Structural Hazards
TPCD '94 Proceedings of the Second International Conference on Theorem Provers in Circuit Design - Theory, Practice and Experience
Symbolic Trajectory Evaluation
Formal Hardware Verification - Methods and Systems in Comparison
Designing Arithmetic Circuits by Refinement in Ruby
Proceedings of the Second International Conference on Mathematics of Program Construction
Microprocessor Specification in Hawk
ICCL '98 Proceedings of the 1998 International Conference on Computer Languages
Symbolic Simulation of Microprocessor Models using TypeClasses in Haskell
Symbolic Simulation of Microprocessor Models using TypeClasses in Haskell
Elementary Microarchitecture Algebra: Top-Level Proof of PipelinedMicroarchitecture
Elementary Microarchitecture Algebra: Top-Level Proof of PipelinedMicroarchitecture
VOSS - A Formal Hardware Verification System User''s Guide
VOSS - A Formal Hardware Verification System User''s Guide
Qualified types: theory and practice (ordering relation)
Qualified types: theory and practice (ordering relation)
Purely functional data structures
Purely functional data structures
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
Developing a high-performance web server in Concurrent Haskell
Journal of Functional Programming
A methodology for generating verified combinatorial circuits
Proceedings of the 4th ACM international conference on Embedded software
When and how to develop domain-specific languages
ACM Computing Surveys (CSUR)
Parallel algorithms development for programmable logic devices
Advances in Engineering Software
Confessions of a used programming language salesman
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Parallel algorithms development for programmable devices with application from cryptography
International Journal of Parallel Programming
AFP'04 Proceedings of the 5th international conference on Advanced Functional Programming
Processor design using a functional hardware description language
Microprocessors & Microsystems
Synchronous digital circuits as functional programs
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
Based on our experience with modelling and verifying microarchitectural designs within Haskell, this paper examines our use of Haskell as host for an embedded language. In particular, we highlight our use of Haskell's lazy lists, type classes, lazy state monad, and unsafe Perform I0, and point to several areas where Haskell could be improved in the future. We end with an example of a benefit gained by bringing the functional perspective to microarchitectural modelling.