Attribute grammars as a functional programming paradigm
Proc. of a conference on Functional programming languages and computer architecture
Abstract types have existential type
ACM Transactions on Programming Languages and Systems (TOPLAS)
Deforestation: transforming programs to eliminate trees
Proceedings of the Second European Symposium on Programming
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Type theory and functional programming
Type theory and functional programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Putting type annotations to work
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Types and programming languages
Types and programming languages
A Theory of Objects
A formal specification of the Haskell 98 module system
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
Principal type-schemes for functional programs
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Scrap your boilerplate: a practical design pattern for generic programming
Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementation
The GRIN Project: A Highly Optimising Back End for Lazy Functional Languages
IFL '96 Selected Papers from the 8th International Workshop on Implementation of Functional Languages
A static semantics for Haskell
Journal of Functional Programming
ACM SIGPLAN Notices
The Implementation of Functional Programming Languages (Prentice-Hall International Series in Computer Science)
The Structure of the Essential Haskell Compiler, or Coping with Compiler Complexity
Implementation and Application of Functional Languages
Attribute grammars fly first-class: how to do aspect oriented programming in Haskell
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
Type checking evolving languages with MSOS
Semantics and algebraic specification
Formally specified type checkers for domain specific languages: experience report
Proceedings of the Tenth Workshop on Language Descriptions, Tools and Applications
Iterative type inference with attribute grammars
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Stepwise evaluation of attribute grammars
Proceedings of the Eleventh Workshop on Language Descriptions, Tools and Applications
Ampersand applying relation algebra in practice
RAMICS'11 Proceedings of the 12th international conference on Relational and algebraic methods in computer science
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
UUAG meets AspectAG: how to make attribute grammars first-class
Proceedings of the Twelfth Workshop on Language Descriptions, Tools, and Applications
Hi-index | 0.00 |
A great deal has been written about type systems. Much less has been written about implementing them. Even less has been written about implementations of complete compilers in which all aspects come together. This paper fills this gap by describing the implementation of a series of compilers for a simplified variant of Haskell. By using an attribute grammar system, aspects of a compiler implementation can be described separately and added in a sequence of steps, thereby giving a series of increasingly complex (working) compilers. Also, the source text of both this paper and the executable compilers come from the same source files by an underlying minimal weaving system. Therefore, source and explanation is kept consistent.