[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/325694acmconferencesBook PagePublication PagespoplConference Proceedingsconference-collections
POPL '00: Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ACM2000 Proceeding
Publisher:
  • Association for Computing Machinery
  • New York
  • NY
  • United States
Conference:
POPL00: Symposium on Principles of Programming Languages 2000 Boston MA USA January 19 - 21, 2000
ISBN:
978-1-58113-125-3
Published:
05 January 2000
Sponsors:
Next Conference
Reflects downloads up to 09 Jan 2025Bibliometrics
Abstract

No abstract available.

Article
Free
Efficient algorithms for pre* and post* on interprocedural parallel flow graphs

This paper is a contribution to the already existing series of work on the algorithmic principles of interprocedural analysis. We consider the generalization to the case of parallel programs. We give algorithms that compute the sets of backward resp. ...

Article
Free
Temporal abstract interpretation

We study the abstract interpretation of temporal calculi and logics in a general syntax, semantics and abstraction independent setting. This is applied to the @@@@-calculus, a generalization of the μ-calculus with new reversal and abstraction modalities ...

Article
Free
A framework for combining analysis and verification

We present a general framework for combining program verification and program analysis. This framework enhances program analysis because it takes advantage of user assertions, and it enhances program verification because assertions can be refined using ...

    Article
    Free
    Transforming out timing leaks

    One aspect of security in mobile code is privacy: private (or secret) data should not be leaked to unauthorised agents. Most of the work on secure information flow has until recently only been concerned with detecting direct and indirect flows. Secret ...

    Article
    Free
    Enforcing trace properties by program transformation

    We propose an automatic method to enforce trace properties on programs. The programmer specifies the property separately from the program; a program transformer takes the program and the property and automatically produces another “equivalent” pogram ...

    Article
    Free
    On the complexity of flow-sensitive dataflow analyses

    This paper attempts to address the question of why certain dataflow analysis problems can be solved efficiently, but not others. We focus on flow-sensitive analyses, and give a simple and general result that shows that analyses that require the use of ...

    Article
    Free
    Projection merging: reducing redundancies in inclusion constraint graphs

    Inclusion-based program analyses are implemented by adding new edges to directed graphs. In most analyses, there are many different ways to add a transitive edge between two nodes, namely through each different path connecting the nodes. This path ...

    Article
    Free
    Article
    Free
    Implicit parameters: dynamic scoping with static types

    This paper introduces a language feature, called implicit parameters, that provides dynamically scoped variables within a statically-typed Hindley-Milner framework. Implicit parameters are lexically distinct from regular identifiers, and are bound by a ...

    Article
    Free
    A new approach to generic functional programming

    This paper describes a new approach to generic functional programming, which allows us to define functions generically for all datatypes expressible in Haskell. A generic function is one that is defined by induction on the structure of types. Typical ...

    Article
    Free
    First-class macros have types

    In modern Scheme, a macro captures the lexical environment where it is defined. This creates an opportunity for extending Scheme so that macros are first-class values. The key to achieving this goal, while preserving the ability to compile programs into ...

    Article
    Free
    Shape analysis for mobile ambients

    The ambient calculus is a calculus of computation that allows active processes to move between sites. We present an analysis inspired by state-of-the-art pointer analyses that safety and accurately predicts which processes may turn up at what sites ...

    Article
    Free
    Semantics-preserving procedure extraction

    Procedure extraction is an important program transformation that can be used to make programs easier to understand and maintain, to facilitate code reuse, and to convert “monolithic” code to modular or object-oriented code. Procedure extraction involves ...

      Article
      Free
      Sparse code motion

      In this article, we add a third dimension to partial redundancy elimination by considering code size as a further optimization goal in addition to the more classical consideration of computation costs and register pressure. This results in a family of ...

      Article
      Free
      Resource bound certification

      Various code certification systems allow the certification and static verification of important safety properties such as memory and control-flow safety. These systems are valuable tools for verifying that untrusted and potentially malicious code is ...

      Article
      Free
      Type systems for distributed data structures

      Distributed-memory programs are often written using a global address space: any process can name any memory location on any processor. Some languages completely hide the distinction between local and remote memory, simplifying the programming model at ...

      Article
      Free
      Deciding type equivalence in a language with singleton kinds

      Work on the TILT compiler for Standard ML led us to study a language with singleton kinds: S(A) is the kind of all types provably equivalent to the type A. Singletons are interesting because they provide a very general form of definitions for type ...

      Article
      Free
      Type elaboration and subtype completion for Java bytecode

      Java source code is strongly typed, but the translation from Java source to bytecode omits much of the type information originally contained within methods. Type elaboration is a technique for reconstructing strongly typed programs from incompletely ...

      Article
      Free
      A semantic model of types and machine instructions for proof-carrying code

      Proof-carrying code is a framework for proving the safety of machine-language programs with a machine-checkable proof. Previous PCC frameworks have defined type-checking rules as part of the logic. We show a universal type framework for proof-carrying ...

      Article
      Free
      A type system for expressive security policies

      Certified code is a general mechanism for enforcing security properties. In this paradigm, untrusted mobile code carries annotations that allow a host to verify its trustworthiness. Before running the agent, the host checks the annotations and proves ...

      Article
      Free
      Verifying secrets and relative secrecy

      Systems that authenticate a user based on a shared secret (such as a password or PIN) normally allow anyone to query whether the secret is a given value. For example, an ATM machine allows one to ask whether a string is the secret PIN of a (lost or ...

      Article
      Free
      A debate on language and tool support for design patterns

      Design patterns have earned a place in the developer's arsenal of tools and techniques for software development. They have proved so useful, in fact, that some have called for their promotion to programming language features. In turn this has rekindled ...

      Article
      Free
      A type system for dynamic Web documents

      Many interactive Web services use the CGI interface for communication with clients. They will dynamically create HTML documents that are presented to the client who then resumes the interaction by submitting data through incorporated form fields. This ...

      Article
      Free
      Authentication primitives and their compilation

      Adopting a programming-language perspective, we study the problem of implementing authentication in a distributed system. We define a process calculus with constructs for authentication and show how this calculus can be translated to a lower-level ...

      Article
      Free
      Generalized certificate revocation

      We introduce a language for creating and manipulating certificates, that is, digitally signed data based on public key cryptography, and a system for revoking certificates. Our approach provides a uniform mechanism for secure distribution of public key ...

      Article
      Free
      Paths vs. trees in set-based program analysis

      Set-based analysis of logic programs provides an accurate method for descriptive type-checking of logic programs. The key idea of this method is to upper approximate the least model of the program by a regular set of trees. In 1991, Frühwirth, Shapiro, ...

      Article
      Free
      Analytic constraint solving and interval arithmetic

      In this paper we describe the syntax, semantics, and implementation of the constraint logic programming language CLP(F) and we prove that the implementation is sound. A CLP(F) constraint is a conjunction of equations and inequations in a first order ...

      Article
      Free
      Controlling interference in ambients

      Two forms of interferences are individuated in Cardelli and Gordon's Mobile Ambients (MA): plain interferences, which are similar to the interferences one finds in CCS and φ-calculus; and grave interferences, which are more dangerous and may be regarded ...

      Article
      Free
      Anytime, anywhere: modal logics for mobile ambients

      The Ambient Calculus is a process calculus where processes may reside within a hierarchy of locations and modify it. The purpose of the calculus is to study mobility, which is seen as the change of spatial configurations over time. In order to describe ...

      Article
      Free
      Reducing sweep time for a nearly empty heap

      Mark and sweep garbage collectors are known for using time proportional to the heap size when sweeping memory, since all objects in the heap, regardless of whether they are live or not, must be visited in order to reclaim the memory occupied by dead ...

      Contributors
      • IBM Thomas J. Watson Research Center
      • University of Wisconsin-Madison
      Please enable JavaScript to view thecomments powered by Disqus.

      Recommendations

      Acceptance Rates

      POPL '00 Paper Acceptance Rate 30 of 151 submissions, 20%;
      Overall Acceptance Rate 824 of 4,130 submissions, 20%
      YearSubmittedAcceptedRate
      POPL '152275223%
      POPL '142205123%
      POPL '041762916%
      POPL '031262419%
      POPL '021282822%
      POPL '011262419%
      POPL '001513020%
      POPL '991362418%
      POPL '981753218%
      POPL '972253616%
      POPL '961483423%
      POPL '941733923%
      POPL '931993920%
      POPL '922043015%
      POPL '911523120%
      POPL '891913016%
      POPL '881772816%
      POPL '871082927%
      POPL '831702816%
      POPL '821213831%
      POPL '811212420%
      POPL '791462718%
      POPL '781352720%
      POPL '771052524%
      POPL '76902022%
      POPL '751002323%
      POPL '731002222%
      Overall4,13082420%