• Documents
  • Authors
  • Tables
  • Log in
  • Sign up
  • MetaCart
  • DMCA
  • Donate

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

LNgen: Tool support for locally nameless representations (2010)

by B Aydemir, S Weirich
Add To MetaCart

Tools

Sorted by:
Results 11 - 16 of 16

Under consideration for publication in J. Functional Programming 1 Acute: High-level programming language design for distributed computation

by Peter Sewell, James J. Leifer, Keith Wansbrough, Mair Allen-williams, Pierre Habouzit, Viktor Vafeiadis
"... † INRIA Rocquencourt Existing languages provide good support for typeful programming of standalone programs. In a distributed system, however, there may be interaction between multiple instances of many distinct programs, sharing some (but not necessarily all) of their module structure, and with som ..."
Abstract - Add to MetaCart
† INRIA Rocquencourt Existing languages provide good support for typeful programming of standalone programs. In a distributed system, however, there may be interaction between multiple instances of many distinct programs, sharing some (but not necessarily all) of their module structure, and with some instances rebuilt with new versions of certain modules as time goes on. In this paper we discuss programminglanguage support for such systems, focussing on their typing and naming issues. We describe an experimental language, Acute, which extends an ML core to support distributed development, deployment, and execution, allowing type-safe interaction between separately-built programs. The main features are: (1) type-safe marshalling of arbitrary values; (2) type names that are generated (freshly and by hashing) to ensure that type equality tests suffice to protect the invariants of abstract types, across the entire distributed system; (3) expression-level names generated to ensure that name equality tests suffice for type safety of associated values, e.g. values carried on named channels; (4) controlled dynamic rebinding of marshalled values to local resources; and (5) thunkification of threads and mutexes to support computation mobility.

OF THE UNIVERSITY OF MINNESOTA BY

by Andrew Jude Gacek
"... Many people have supported me during the development of this thesis and I owe them all a debt of gratitude. Firstly, I would like to thank my advisor Gopalan Nadathur for his patience and guidance which have played a significant part in my development as a researcher. His willingness to share his op ..."
Abstract - Add to MetaCart
Many people have supported me during the development of this thesis and I owe them all a debt of gratitude. Firstly, I would like to thank my advisor Gopalan Nadathur for his patience and guidance which have played a significant part in my development as a researcher. His willingness to share his opinions on everything from academic life to playing squash has helped me to develop a perspective and to have fun while doing this. I look forward to continuing my interactions with him far into the future. I am grateful to Dale Miller for sharing with me an excitement for research and an appreciation of the uncertainty that precedes understanding. I have never met anybody else who so enjoys when things seem amiss, because he knows that a new perspective will eventually emerge and bring clarity. This thesis has been heavily influenced by the time I have spent working with Alwen Tiu, David Baelde, Zach Snow, and Xiaochu Qi. Understanding their work has given me a deeper understanding of my own research and its role in the bigger picture. I am thankful for the time I have had with each and every one of them.

A Framework for Specifying, Prototyping, and Reasoning about Computational Systems

by unknown authors , 2009
"... ar ..."
Abstract - Add to MetaCart
Abstract not found
(Show Context)

Citation Context

...nally, users must show that these binding and unbinding functions interact with substitution in appropriate ways. Recent progress has been made in automatically generating this type of infrastructure =-=[AW09]-=-. The locally nameless representation has some analogs to our own representation in the following sense: we represent bound variables using λ-terms and free variables using nominal constants. However,...

unknown title

by Stephanie Weirich
"... My research focuses on the design of statically-typed programming languages. Static type systems are a popular, cost-effective form of lightweight program verification. They provide a tractable and modular way for programmers to express properties that can be mechanically checked by the compiler. As ..."
Abstract - Add to MetaCart
My research focuses on the design of statically-typed programming languages. Static type systems are a popular, cost-effective form of lightweight program verification. They provide a tractable and modular way for programmers to express properties that can be mechanically checked by the compiler. As a result, the compiler can rule out a wide variety of errors and provide more information to refactoring and development tools. For example, systems written with type-safe languages cannot be compromised by buffer overruns if all array accesses are statically proven safe. Furthermore, programmers can modify their code with the assurance that they have not violated critical safety properties. I explore these designs in the context of functional programming languages, such as Haskell and ML. Functional programming languages are an ideal context for type system research; they excel in their capabilities for static reasoning. However, there is need for improvement. Some programming idioms must be ruled out simply because they cannot be shown to be sound by existing type systems. To overcome these limitations, my work investigates type system features in the context of both new languages and existing ones, and evaluates those designs with respect to both theory and practice. Trellys: Dependently-typed language design Dependent types promise to dramatically increase the effectiveness of static type systems. They work by allowing types to depend on program values, enabling specifications that are both more flexible and more precise. However, even though dependent type theory has been well studied as a foundation for logical reasoning, these type systems have been little used in practical programming languages.
(Show Context)

Citation Context

...nding representations. In particular, we developed a new technique for inductive relations over a locally nameless representation of syntax [ACP+08]. My student Brian Aydemir developed the LNgen tool =-=[AW10]-=- to aid in the support of locally nameless representation. More recently, Ghent University PhD student Steven Keuchel developed the InfraGen tool to support working with de Bruijn representations of b...

Recommended Citation

by Arthur Greenberg
"... shelves: A collegial approach to complex and ..."
Abstract - Add to MetaCart
shelves: A collegial approach to complex and

The Gourmet and Other Stories of Modern China

by Michael Greenberg, Lu Wenfu, Taro Sekiyama, Jianzhou Zhao, Ron Garcia, Fritz Henglein, Arjun Ravi Narayan
"... I know you have faith in me; let me take it with me on the road before me and I will be able to go on forever. “Tang Qiaodi” ..."
Abstract - Add to MetaCart
I know you have faith in me; let me take it with me on the road before me and I will be able to go on forever. “Tang Qiaodi”
(Show Context)

Citation Context

...g [33]. This document is typeset in LATEX using Computer Modern. There would be even more errors had I not used Sewell and Zappa Nardelli’s OTT tool [62]. I also used Aydemir and Weirich’s LNGen tool =-=[7]-=- for the Coq development of parallel reduction in Chapter 2. ix Chapter 1 Introduction Master, I’ve filled my contract, wrought in Thy many lands; Not by my sins wilt Thou judge me, but by the work of...

Powered by: Apache Solr
  • About CiteSeerX
  • Submit and Index Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2019 The Pennsylvania State University