Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- articleJanuary 2010
Ott: Effective tool support for the working semanticist
- Peter Sewell,
- Francesco zappa Nardelli,
- Scott Owens,
- Gilles Peskine,
- Thomas Ridge,
- Susmit Sarkar,
- Rok StrniŠa
Journal of Functional Programming (JOFP), Volume 20, Issue 1Pages 71–122https://doi.org/10.1017/S0956796809990293Semantic definitions of full-scale programming languages are rarely given, despite the many potential benefits. Partly this is because the available metalanguages for expressing semantics – usually either <private-char><inline-graphic mime-subtype="gif" ...
- articleJanuary 2010
The arrow calculus
Journal of Functional Programming (JOFP), Volume 20, Issue 1Pages 51–69https://doi.org/10.1017/S095679680999027XWe introduce the arrow calculus, a metalanguage for manipulating Hughes's arrows with close relations both to Moggi's metalanguage for monads and to Paterson's arrow notation. Arrows are classically defined by extending lambda calculus with three ...
- articleJuly 2008
Safety of nöcker's strictness analysis
Journal of Functional Programming (JOFP), Volume 18, Issue 4Pages 503–551https://doi.org/10.1017/S0956796807006624This paper proves correctness of Nöcker's method of strictness analysis, implemented in the Clean compiler, which is an effective way for strictness analysis in lazy functional languages based on their operational semantics. We improve upon the work ...
- articleJuly 2008
Dynamic rebinding for marshalling and update, via redex-time and destruct-time reduction
Journal of Functional Programming (JOFP), Volume 18, Issue 4Pages 437–502https://doi.org/10.1017/S0956796807006600Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example, when a marshalled value is received from the network,...
- articleMay 2008
Control reduction theories: The benefit of structural substitution
Journal of Functional Programming (JOFP), Volume 18, Issue 3Pages 373–419https://doi.org/10.1017/S0956796807006612The historical design of the call-by-value theory of control relies on the reification of evaluation contexts as regular functions and on the use of ordinary term application for jumping to a continuation. To the contrary, the <private-char><inline-...
- articleNovember 2007
On one-pass CPS transformations
Journal of Functional Programming (JOFP), Volume 17, Issue 6Pages 793–812https://doi.org/10.1017/S0956796807006387We bridge two distinct approaches to one-pass CPS transformations, i.e, CPS transformations that reduce administrative redexes at transformation time instead of in a post-processing phase. One approach is compositional and higher-order, and is ...
- articleJuly 2007
Mechanizing metatheory in a logical framework
Journal of Functional Programming (JOFP), Volume 17, Issue 4-5Pages 613–673https://doi.org/10.1017/S0956796807006430The LF logical framework codifies a methodology for representing deductive systems, such as programming languages and logics, within a dependently typed λ-calculus. In this methodology, the syntactic and deductive apparatus of a system is encoded as the ...
- articleJanuary 2007
Practical type inference for arbitrary-rank types
Journal of Functional Programming (JOFP), Volume 17, Issue 1Pages 1–82https://doi.org/10.1017/S0956796806006034Haskell's popularity has driven the need for ever more expressive type system features, most of which threaten the decidability and practicality of Damas-Milner type inference. One such feature is the ability to write functions with higher-rank types – ...
- articleJanuary 2004
Dependent types ensure partial correctness of theorem provers
Journal of Functional Programming (JOFP), Volume 14, Issue 1Pages 3–19https://doi.org/10.1017/S0956796803004921Static type systems in programming languages allow many errors to be detected at compile time that wouldn't be detected until runtime otherwise. Dependent types are more expressive than the type systems in most programming languages, so languages that ...
- articleMarch 2003
A fully adequate shallow embedding of the π-calculus in Isabelle/HOL with mechanized syntax analysis
Journal of Functional Programming (JOFP), Volume 13, Issue 2Pages 415–451https://doi.org/10.1017/S0956796802004653This paper discusses an application of the higher-order abstract syntax technique to general-purpose theorem proving, yielding shallow embeddings of the binders of formalized languages. Higher-order abstract syntax has been applied with success in ...
- articleMarch 2003
Special issue on ‘Logical frameworks and metalanguages’
Journal of Functional Programming (JOFP), Volume 13, Issue 2Pages 257–260https://doi.org/10.1017/S0956796802004549There is both a great unity and a great diversity in presentations of logic. The diversity is staggering indeed – propositional logic, first-order logic, higher-order logic belong to one classification; linear logic, intuitionistic logic, classical ...
- articleJanuary 2000
Special issue on Logical Frameworks and Metalanguages http//www-sop.inria.fr/certilab/LFM00/cfp-jfp.html
Journal of Functional Programming (JOFP), Volume 10, Issue 1Pages 135–136https://doi.org/10.1017/S0956796899009892Logical frameworks and meta-languages are intended as a common substrate for representing and implementing a wide variety of logics and formal systems. Their definition and implementation have been the focus of considerable work over the last decade. At ...
- articleJanuary 2000
Lambda terms for natural deduction, sequent calculus and cut elimination
Journal of Functional Programming (JOFP), Volume 10, Issue 1Pages 121–134https://doi.org/10.1017/S0956796899003524It is well known that there is an isomorphism between natural deduction derivations and typed lambda terms. Moreover, normalising these terms corresponds to eliminating cuts in the equivalent sequent calculus derivations. Several papers have been ...
- articleMarch 1999
Functional design and implementation of graphical user interfaces for theorem provers
Journal of Functional Programming (JOFP), Volume 9, Issue 2Pages 167–189https://doi.org/10.1017/S0956796899003421The design of theorem provers, especially in the LCF-prover family, has strongly profited from functional programming. This paper attempts to develop a metaphor suited to visualize the LCF-style prover design, and a methodology for the implementation of ...
- articleMarch 1999
HOLCF = HOL + LCF
Journal of Functional Programming (JOFP), Volume 9, Issue 2Pages 191–223https://doi.org/10.1017/S095679689900341XHOLCF is the definitional extension of Church's Higher-Order Logic with Scott's Logic for Computable Functions that has been implemented in the theorem prover Isabelle. This results in a flexible setup for reasoning about functional programs. HOLCF ...
- articleMarch 1998
Computational types from a logical perspective
Journal of Functional Programming (JOFP), Volume 8, Issue 2Pages 177–193https://doi.org/10.1017/S0956796898002998Moggi's computational lambda calculus is a metalanguage for denotational semantics which arose from the observation that many different notions of computation have the categorical structure of a strong monad on a cartesian closed category. In this paper ...