Abstract

Functional programming languages offer a high degree of abstractions and clean semantics, which are desirable for hardware descriptions. This short historical survey is about functional languages specifically created for hardware design and verification. It also includes those hardware languages or formalisms which are strongly influenced by functional programming style.

Highlights

  • Software programmers have been benefited from functional languages in many aspects

  • Functional languages can hardly be separated from formal hardware specification and verification

  • The novel feature of this calculus is the introduction of a parallel-or operator, which models the parallel execution of OR gate with a nondeterministic reduction semantics

Read more

Summary

Introduction

Software programmers have been benefited from functional languages in many aspects. A functional program is typically more concise than an equivalent imperative style program, which results in an improvement of programming productivity. These works are formal hardware specifications intended to give precise descriptions for hardware They illustrated how basic circuits as well as prototype microprocessors can be described in functional language style. While Daisy deals mainly with first-order functions, Hydra includes higher-order combining forms [20] It is capable of performing multiple circuit interpretation (simulation, layout, timing, etc.). Boute and his students developed a system description language Glass [27, 28] in the project FORFUN (Formal Description of Arbitrary Systems by means of Functional Languages) which aimed to support both circuit description and software description Other works in this period include [29, 30]. A useful feature of this language is that its type system is capable of describing bit vectors of fixed length

FHL’07
Concluding Remarks

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.