The C programming language
A tractable Scheme implementation
Lisp and Symbolic Computation
Higher-order distributed objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
Revised5 report on the algorithmic language scheme
ACM SIGPLAN Notices
The Art of the Metaobject Protocol
The Art of the Metaobject Protocol
Programming language support for digitized images or, the monsters in the closet
DSL'97 Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997
When and how to develop domain-specific languages
ACM Computing Surveys (CSUR)
Path-based scheduling in a hardware compiler
Proceedings of the Conference on Design, Automation and Test in Europe
Bossa nova: introducing modularity into the bossa domain-specific language
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Chisel: constructing hardware in a Scala embedded language
Proceedings of the 49th Annual Design Automation Conference
Hi-index | 0.00 |
Verischemelog (pronounced with 5 syllables, veruh-scheme-uh-log) is a language and programming environment embedded in Scheme for designing digital electronic hardware systems and for controlling the simulation of these circuits. Simulation is performed by a separate program, often a commercial product. Verischemelog compiles to Verilog, an industry standard language accepted by several commercial and public domain simulators.Because many design elements are easily parameterized, design engineers currently write scripts which generate hardware description code in Verilog. These scripts work by textual substitution, and are typically ad-hoc and quite limited. Preprocessors for Verilog, on the other hand, are hampered by their macro-expansion languages, which support few data types and lack procedures. Verischemelog obviates the need for scripts and preprocessors by providing a hardware description language with list-based syntax, and Scheme to manipulate it.An interactive development environment gives early and specific feedback about errors, and structured access to the compiler and run-time environment provide a high degree of reconfigurability and extensibility of Verischemelog.