43,449 research outputs found

    No value restriction is needed for algebraic effects and handlers

    Full text link
    We present a straightforward, sound Hindley-Milner polymorphic type system for algebraic effects and handlers in a call-by-value calculus, which allows type variable generalisation of arbitrary computations, not just values. This result is surprising. On the one hand, the soundness of unrestricted call-by-value Hindley-Milner polymorphism is known to fail in the presence of computational effects such as reference cells and continuations. On the other hand, many programming examples can be recast to use effect handlers instead of these effects. Analysing the expressive power of effect handlers with respect to state effects, we claim handlers cannot express reference cells, and show they can simulate dynamically scoped state

    The Efficient Liability Sharing Factor For Environmental Disasters: Lessons For Optimal Insurance Regulation

    Get PDF
    Using a structural model of the interactions between governments, firms and insurance companies, we characterise the distortions in environmental liability sharing between firms and insurance companies that the imperfect implementation of government policies implies. These distortions stem from three factors: the presence of moral hazard, the non congruence between firms/insurers objectives and social welfare, and the courts’ imperfect assessment of safety care levels exerted by firms. We characterize cases where the efficient liability sharing factor is above or below its full information perfect implementation level. We derive comparative statics results indicating how sensitive the liability sharing factor is to changes in parameters (parameters that underlie the firm profit level and volatility, the cost of safety care, the monitoring cost, the social cost of public funds, the effectiveness of care in reducing the probability of accident) that are relevant for the characterization of optimal policies (liability sharing, safety care standards) toward environmental protection or the prevention of industrial accidents. We derive policy implications regarding environmental disaster insurance policies. À l’aide d’un modèle structurel des interactions entre les gouvernements, les entreprises et les assureurs, nous caractérisons les distorsions dans le partage des responsabilités entre entreprises et assureurs qu’implique la mise en place imparfaite des politiques gouvernementales. Ces distorsions résultent de trois facteurs : la présence de risque moral, la non-congruence des objectifs des entreprises, des assureurs et de bien-être social, et l’observation imparfaite des efforts de prévention des entreprises par le système judiciaire. Nous dérivons des résultats de statique comparée montrant la sensibilité du facteur de partage des responsabilités à des changements dans les paramètres sous-jacents à la profitabilité, au coût des efforts de prévention, à l’efficacité de ces efforts dans la réduction de la probabilité d’accident, au coût de monitoring, au coût social des fonds publics, et qui sont pertinents à la caractérisation des politiques optimales (partage de responsabilité, standard légal du niveau de prévention) de protection environnementale et de prévention des accidents. Nous en déduisons certaines implications quant aux politiques relatives à l’assurance contre les désastres environnementaux.Liability sharing, environmental insurance, safety care, moral hazard, principal-agent., Partage de responsabilité, assurance environnementale, effort de prévention, risque moral, principal-agent.

    Assignment, garnishment, and consumer credit in Illinois (Institute of Labor and Industrial Relations. Bulletin No. 26)

    Get PDF
    Bibliographical footnotes

    HardScope: Thwarting DOP with Hardware-assisted Run-time Scope Enforcement

    Full text link
    Widespread use of memory unsafe programming languages (e.g., C and C++) leaves many systems vulnerable to memory corruption attacks. A variety of defenses have been proposed to mitigate attacks that exploit memory errors to hijack the control flow of the code at run-time, e.g., (fine-grained) randomization or Control Flow Integrity. However, recent work on data-oriented programming (DOP) demonstrated highly expressive (Turing-complete) attacks, even in the presence of these state-of-the-art defenses. Although multiple real-world DOP attacks have been demonstrated, no efficient defenses are yet available. We propose run-time scope enforcement (RSE), a novel approach designed to efficiently mitigate all currently known DOP attacks by enforcing compile-time memory safety constraints (e.g., variable visibility rules) at run-time. We present HardScope, a proof-of-concept implementation of hardware-assisted RSE for the new RISC-V open instruction set architecture. We discuss our systematic empirical evaluation of HardScope which demonstrates that it can mitigate all currently known DOP attacks, and has a real-world performance overhead of 3.2% in embedded benchmarks

    Type assignment in programming languages

    Get PDF
    corecore