Please use this identifier to cite or link to this item:
https://www.um.edu.mt/library/oar/handle/123456789/22750
Title: | Embedding a hardware description language in a functional meta-programming language |
Authors: | Pace, Gordon J. Tabone, Christian |
Keywords: | Haskell (Computer program language) Embedded computer systems Computer hardware description languages ML (Computer program language) |
Issue Date: | 2007 |
Publisher: | University of Malta. Faculty of ICT |
Citation: | Pace, G. J., & Tabone, C. (2007). Embedding a hardware description language in a functional meta-programming language. 5th Computer Science Annual Workshop (CSAW’07), Msida. 203-215. |
Abstract: | General purpose functional languages such as Haskell, have been widely used as host languages for the embedding of domain specific languages. In particular, various hardware description languages have been successfully embedded in Haskell and other functional languages. More recently, meta-programming languages have also started being used for the embedding of such languages, where the meta-language features allow us to access the structure of data objects in a shallow-style embedding, while retaining the characteristics of a deep-embedding. In this paper, we discuss the application of meta-functional languages for the embedding of a hardware description language, based on reFLect, a functional meta-language which provides an alternative approach for embedding a hardware description language by means of built-in reflection features. Through the use of code quotation and pattern matching, we use reFLect to build a framework through which we can access the structure of our circuits by means of reflection. |
URI: | https://www.um.edu.mt/library/oar//handle/123456789/22750 |
Appears in Collections: | Scholarly Works - FacICTCS |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
Proceedings of CSAW’07 - A20.pdf | 130.53 kB | Adobe PDF | View/Open |
Items in OAR@UM are protected by copyright, with all rights reserved, unless otherwise indicated.