135,601 research outputs found

    The Regulation of Women's Pay: From Individual Rights to Reflexive Law?

    Get PDF
    Legislation mandating equality of pay between women and men was among the earliest forms of sex discrimination legislation to be adopted in Britain. However, the model embodied in the Equal Pay Act 1970 is increasingly being questioned: the law is, at one and the same time, highly complex and difficult to apply, while apparently contributing little to the further narrowing of the pay gap. As a result there is a growing debate about whether a shift in regulatory strategy is needed, away from direct legal enforcement to a more flexible approach, based around the concept of 'reflexive law'. This paper provides an assessment of whether reflexive approaches are likely to work in the equal pay area.equal pay, sex discrimination, reflexive law

    A Call-by-Need Strategy for Higher-Order Functional-Logic Programming

    Get PDF
    We present an approach to truely higher-order functional-logic programming based on higher-order narrowing. Roughly speaking, we model a higherorder functional core language by higher-order rewriting and extend it by logic variables. For the integration of logic programs, conditional rules are supported. For solving goals in this framework, we present a complete calculus for higher-order conditional narrowing. We develop several refinements that utilize the determinism of functional programs. These refinements can be combined to a narrowing strategy which generalizes call-by-need as in functional programming, where the dedicated higher-order methods are only used for full higher-order goals. Furthermore, we propose an implementational model for this narrowing strategy which delays computations until needed

    A Narrowing-based Instantiation Rule for Rewriting-based Fold/Unfold Transformations

    Get PDF
    AbstractIn this paper we show how to transfer some developments done in the field of functionallogic programming (FLP) to a pure functional setting (FP). More exactly, we propose a complete fold/unfold based transformation system for optimizing lazy functional programs. Our main contribution is the definition of a safe instantiation rule which is used to enable effective unfolding steps based on rewriting. Since instantiation has been traditionally considered problematic in FP, we take advantage of previous experiences in the more general setting of FLP where instantiation is naturally embedded into an unfolding rule based on narrowing. Inspired by the so called needed narrowing strategy, our instantiation rule inherits the best properties of this refinement of narrowing. Our proposal optimizes previous approaches (that require more transformation effort) defined in the specialized literature of pure FP by anticipating bindings on unifiers used to instantiate a given program rule and by generating redexes at different positions on instantiated rules in order to enable subsequent unfolding steps. As a consequence, our correct/complete technique avoids redundant rules and preserves the natural structure of programs

    Needed Computations Shortcutting Needed Steps

    Get PDF
    We define a compilation scheme for a constructor-based, strongly-sequential, graph rewriting system which shortcuts some needed steps. The object code is another constructor-based graph rewriting system. This system is normalizing for the original system when using an innermost strategy. Consequently, the object code can be easily implemented by eager functions in a variety of programming languages. We modify this object code in a way that avoids total or partial construction of the contracta of some needed steps of a computation. When computing normal forms in this way, both memory consumption and execution time are reduced compared to ordinary rewriting computations in the original system.Comment: In Proceedings TERMGRAPH 2014, arXiv:1505.0681
    • …
    corecore