Results 1 -
8 of
8
Languages of the Future
- In OOPSLA ’04: Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
, 2004
"... This paper explores a new point in the design space of formal reasoning systems - part programming language, part logical framework. The system is built on a programming language where the user expresses equality constraints between types and the type checker then enforces these constraints. This si ..."
Abstract
-
Cited by 62 (3 self)
- Add to MetaCart
This paper explores a new point in the design space of formal reasoning systems - part programming language, part logical framework. The system is built on a programming language where the user expresses equality constraints between types and the type checker then enforces these constraints. This simple extension to the type system allows the programmer to describe properties of his program in the types of witness objects which can be thought of as concrete evidence that the program has the property desired. These techniques and two other rich typing mechanisms, rank-N polymorphism and extensible kinds, create a powerful new programming idiom for writing programs whose types enforce semantic properties. A language with these features is both a practical programming language and a logic. This marriage between two previously separate entities increases the probability that users will apply formal methods to their programming designs. This kind of synthesis creates the foundations for the languages of the future.
Tag Elimination and Jones-Optimality
"... Tag elimination is a program transformation for removing unnecessary tagging and untagging operations from automatically... ..."
Abstract
-
Cited by 20 (3 self)
- Add to MetaCart
Tag elimination is a program transformation for removing unnecessary tagging and untagging operations from automatically...
In search of a program generator to implement generic transformations for high-performance computing
- In 1 st MetaOCaml Workshop (associated with GPCE
, 2004
"... The quality of compiler-optimized code for high-performance applications lags way behind what optimization and domain experts can achieve by hand. This paper explores in-between solutions, besides fully automatic and fully-manual code optimization. This work discusses how generative approaches can h ..."
Abstract
-
Cited by 9 (4 self)
- Add to MetaCart
The quality of compiler-optimized code for high-performance applications lags way behind what optimization and domain experts can achieve by hand. This paper explores in-between solutions, besides fully automatic and fully-manual code optimization. This work discusses how generative approaches can help the design and optimization of supercomputing applications. It outlines early results and research directions, using MetaOCaml for the design of a generative tool-box to design portable optimized code. We also identify some limitations the MetaOCaml system. We finally present and advocate for an offshoring approach to bring high-level and safe metaprogramming to imperative languages.
DALI: An Untyped CBV Operational Semantics and Equational Theory for Datatypes with Binders (Technical Development)
"... . This report presents the basic de#nitions and formal development of DALI, a novel extension of the CBV lambda calculus. DALI is based on a proposal by Miller, and provides an elegant and well-behaved notion of object-variables. The notion is elegant because it avoids any explicit need for a #gensy ..."
Abstract
- Add to MetaCart
. This report presents the basic de#nitions and formal development of DALI, a novel extension of the CBV lambda calculus. DALI is based on a proposal by Miller, and provides an elegant and well-behaved notion of object-variables. The notion is elegant because it avoids any explicit need for a #gensym" or #newname" operation that is often needed in such systems. The notion is well-behaved in that it induces a computationally adequate equational theory. Our development follows the one employed in Taha's thesis #4# for MetaML#7, 5#. The developmentwas easy to adapt, and some of the major lemmas and proofs remained essentially unchanged. This success is further evidence of the robustness of both the observations of Takahashi on the notion of parallel reduction and the original #standardisation" developmentby Plotkin for the CBV and CBN lambda calculus. ? The research reported in this paper was supported by the USAF Air Materiel Command, contract # F19628-96-C-0161, NSF Grants CCR-9803880 ...
Tag Elimination and Jones-Optimality (includes proofs)
"... . Tag elimination is a program transformation for removing ..."
Evolving Domain Specific Languages
"... cted from embedded implementations in a semi automated way, further blending the distinction between the two approaches. This bodes well for lessening the cost of deploying a DSL since its suggests several strategies for evolving an embedded implementation to a stand-alone one in a cost e#ective way ..."
Abstract
- Add to MetaCart
cted from embedded implementations in a semi automated way, further blending the distinction between the two approaches. This bodes well for lessening the cost of deploying a DSL since its suggests several strategies for evolving an embedded implementation to a stand-alone one in a cost e#ective way. The proposed research would investigate applying meta-programming tools to DSL evolution, in several di#erent dimensions: . Extending the capabilities of host languages for embedded implementations. . Exploring automated techniques for converting embedded implementations to stand-alone implementations. . Automating the generation of stand-alone implementations. Broader Impact: The opportunity costs of being unable to utilize computers e#ectively has a large cost: projects that are never attempted, or whose scope is significantly reduced, because the cost of developing software is too high to contemplate, or too complex to write. DSLs can play a large role in mitigating these costs,
Combining Programming Languages and Logical Reasoning Systems: Project Summary
"... This paper was particularly useful as it explained in practical terms how to build such a type checker -- in particular how to set up the subsumption relation that describes which types are more polymorphic than others ..."
Abstract
- Add to MetaCart
This paper was particularly useful as it explained in practical terms how to build such a type checker -- in particular how to set up the subsumption relation that describes which types are more polymorphic than others
Other
"... Submit only ONE copy of this form for each PI/PD and co-PI/PD identified on the proposal. The form(s) should be attached to the original proposal as specified in GPG Section II.B. Submission of this information is voluntary and is not a precondition of award. This information will ..."
Abstract
- Add to MetaCart
Submit only ONE copy of this form for each PI/PD and co-PI/PD identified on the proposal. The form(s) should be attached to the original proposal as specified in GPG Section II.B. Submission of this information is voluntary and is not a precondition of award. This information will

