Scope :: Escape

Reified escape continuaties
Download nu

Scope :: Escape Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Andrew Main
  • Uitgever website:
  • http://search.cpan.org/~zefram/

Scope :: Escape Tags


Scope :: Escape Beschrijving

Reified Escape-continuaties Scope: Escape is een PERL-module die een gegeneraliseerde faciliteit biedt voor niet-lokale besturingsoverdracht (springen tussen stapelframes), gebaseerd op de goed doordachte semantiek van gemeenschappelijke lisp. Het biedt operators die de ESCAPE (Return) voortzetting van het huidige stapelframe vastleggen en herstellen. Het stapelframe kan dan worden geretourneerd van, op (bijna) op elk moment, terwijl het nog steeds bestaat, via de herbevelde voortzetting. Dit geldt niet alleen voor subroutine stapelframes, maar ook naar tussenliggende frames voor codeblokken en andere soorten stapelframe. Deze faciliteit kan direct worden gebruikt, of ingepakt om een meer gestructureerde faciliteit te bouwen. Het systeem van reified escape-continuaties is fundamenteel verschillend van de oorspronkelijke uitzonderingsfaciliteit van Perl's. Met Die heeft de code die de niet-lokale overdracht initieert, geen controle over waar het naartoe gaat. Elk EVAL-frame kan beslissen of het wil optreden als het doelwit van de gooide uitzondering, maar het moet deze beslissing vrijwel volledig optreden op wat in het uitzonderingsobject is vastgelegd, omdat de stapelkaders tussen de matrijs en de eval al zijn geweest afgewikkeld tegen die tijd. Met herhaalde continuaties, bepaalt de code de overdracht echter waar het naartoe gaat (door te kiezen welke voortzetting in gebruik is), en dat besluit kan worden gemaakt met alle informatie over de nog beschikbare omstandigheden.A REIFICEERD ESCAPE-voortzetting verschijnt in Perl functieobject. Het bellen van de functie resulteert in het terugkeren van het stapelframe dat het doelwit van de voortzetting is. Waarden die zijn doorgegeven aan de functie worden geretourneerd van het Target Stack Frame. Eventueel kan de voortzetting worden gezegend in de reikwijdte :: Escape :: Voortzetting Klasse. Deze klasse biedt een op de methode gebaseerde interface met de voortzetting: overbrengen via de voortzetting, en het opvragen van zijn toestand, kan worden uitgevoerd door methode roept op het voortzetting-object. De methoden kunnen ook rechtstreeks worden genoemd, als functies, op onbedorven vervolgfuncties.Synopsis gebruikscope :: Escape QW (Current_escape_function); $ Escape = Current_escape_functie; ... $ Escape -> ($ resultaat); Gebruik Scope :: Escape :: Voortzetting QW (Current_escape_Continuation); $ Escape = Current_escape_Continuation; ... $ Escape-> Go ($ resultaat); Vereisten: · Perl


Scope :: Escape Gerelateerde software

fp

Een bibliotheek voor het programmeren in een functionele stijl ...

190

Downloaden