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
Summary
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
Published Version (Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
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.