From Interpreter to logic Engine by Defunctionalization

Dariusz Biernacki, Olivier Danvy

    Publikation: Bidrag til bog/antologi/rapport/proceedingBidrag til bog/antologiForskning

    Abstract

    Starting from a continuation-based interpreter for a simple logic programming language, propositional Prolog with cut, we derive the corresponding logic engine in the form of an abstract machine. The derivation originates in previous work (our article at PPDP 2003) where it was applied to the lambda-calculus. The key transformation here is Reynoldss defunctionalization that transforms a tail-recursive, continuation-passing interpreter into a transition system, i.e., an abstract machine. Similar denotational and operational semantics were studied by de Bruin and de Vink (their article at TAPSOFT 1989), and we compare their study with our derivation. Additionally, we present a direct-style interpreter of propositional Prolog expressed with control operators for delimited continuations.
    OriginalsprogEngelsk
    TitelLogic Based Program Synthesis and Transformation : 13th International Symposium, LOPSTR 2003, Uppsala, Sweden, August 25-27, 2003, Revised Selected Papers
    RedaktørerMaurice Bruynooghe
    Antal sider17
    ForlagSpringer
    Publikationsdato2004
    Sider143-159
    ISBN (Trykt)978-3-540-22174-6
    DOI
    StatusUdgivet - 2004
    BegivenhedInternational Symposium on Logic Based Program Development and Transformation (LOPSTR '03) - Uppsala, Sverige
    Varighed: 25 aug. 200427 aug. 2004

    Konference

    KonferenceInternational Symposium on Logic Based Program Development and Transformation (LOPSTR '03)
    Land/OmrådeSverige
    ByUppsala
    Periode25/08/200427/08/2004
    NavnLecture Notes in Computer Science
    Vol/bind3018

    Fingeraftryk

    Dyk ned i forskningsemnerne om 'From Interpreter to logic Engine by Defunctionalization'. Sammen danner de et unikt fingeraftryk.

    Citationsformater