Implementing mathematics with the Nuprl proof development system
Implementing mathematics with the Nuprl proof development system
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Type systems for programming languages
Handbook of theoretical computer science (vol. B)
Logic programming in the LF logical framework
Logical frameworks
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
Introduction to HOL: a theorem proving environment for higher order logic
Introduction to HOL: a theorem proving environment for higher order logic
A type-theoretical alternative to ISWIM, CUCH, OWHY
Theoretical Computer Science - A collection of contributions in honour of Corrado Bo¨hm on the occasion of his 70th birthday
ACM Transactions on Programming Languages and Systems (TOPLAS)
Encoding types in ML-like languages
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
A compositional account of the Java virtual machine
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Prototyping real-time vision systems: an experiment in DSL design
Proceedings of the 21st international conference on Software engineering
Calling hell from heaven and heaven from hell
Proceedings of the fourth ACM SIGPLAN international conference on Functional programming
Embedding type structure in semantics
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Domain specific embedded compilers
Proceedings of the 2nd conference on Domain-specific languages
The next 700 programming languages
Communications of the ACM
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
The Definition of Standard ML
Higher-Order and Symbolic Computation
Compiling Embedded Programs to Byte Code
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
A Semantic Account of Type-Directed Partial Evaluation
PPDP '99 Proceedings of the International Conference PPDP'99 on Principles and Practice of Declarative Programming
Primitive Recursion for Higher-Order Abstract Syntax
TLCA '97 Proceedings of the Third International Conference on Typed Lambda Calculi and Applications
Multi-Stage Programming: Axiomatization and Type Safety
ICALP '98 Proceedings of the 25th International Colloquium on Automata, Languages and Programming
Nuprl-Light: An Implementation Framework for Higher-Order Logics
CADE-14 Proceedings of the 14th International Conference on Automated Deduction
Continuation Semantics in Typed Lambda-Calculi (Summary)
Proceedings of the Conference on Logic of Programs
A temporal-logic approach to binding-time analysis
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
Semantical Analysis of Higher-Order Abstract Syntax
LICS '99 Proceedings of the 14th Annual IEEE Symposium on Logic in Computer Science
Scripting COM Components in Haskell
ICSR '98 Proceedings of the 5th International Conference on Software Reuse
Modular Domain Specific Languages and Tools
ICSR '98 Proceedings of the 5th International Conference on Software Reuse
Language support for program generation: reasoning, implementation, and applications
Language support for program generation: reasoning, implementation, and applications
Normalization by evaluation with typed abstract syntax
Journal of Functional Programming
Modeling interactive 3D and multimedia animation with an embedded language
DSL'97 Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997
Journal of Functional Programming
Syntax for Free: Representing Syntax with Binding Using Parametricity
TLCA '09 Proceedings of the 9th International Conference on Typed Lambda Calculi and Applications
Experience report: OCaml for an industrial-strength static analysis framework
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
Unembedding domain-specific languages
Proceedings of the 2nd ACM SIGPLAN symposium on Haskell
Mixed-level embedding and JIT compilation for an iteratively staged DSL
WFLP'10 Proceedings of the 19th international conference on Functional and constraint logic programming
Haskell boards the ferry: database-supported program execution for Haskell
IFL'10 Proceedings of the 22nd international conference on Implementation and application of functional languages
Embedding an interpreted language using higher-order functions and types
Journal of Functional Programming
Efficient code generation for a domain specific language
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Hi-index | 0.01 |
Recent work on embedding object languages into Haskell use "phantom types" (i.e., parameterized types whose parameter does not occur on the right-hand side of the type definition) to ensure that the embedded object-language terms are simply typed. But is it a safe assumption that only simply-typed terms can be represented in Haskell using phantom types? And conversely, can all simply-typed terms be represented in Haskell under the restrictions imposed by phantom types? In this article we investigate the conditions under which these assumptions are true: We show that these questions can be answered affirmatively for an idealized Haskell-like language and discuss to which extent Haskell can be used as a meta-language.