Alcance :: Escape

Reift Escape Continuaciones
Descargar ahora

Alcance :: Escape Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Perl Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • Andrew Main
  • Sitio web del editor:
  • http://search.cpan.org/~zefram/

Alcance :: Escape Etiquetas


Alcance :: Escape Descripción

Continuaciones de escape reificado Alcance :: Escape es un módulo PERL que proporciona una instalación generalizada para la transferencia de control no local (saltando entre marcos de pila), basado en la semántica bien pensada de Lisp comunes. Proporciona a los operadores que capturarán y reificarán la continuación del escape (retorno) del marco de la pila actual. Luego, se puede devolver el marco de la pila de, en (casi) en cualquier momento mientras aún existe, a través de la continuación de la continuación. Esto se aplica no solo a los marcos de la pila de subrutina, sino también a los marcos intermedios para bloques de código, y otros tipos de marco de pila. Esta instalación se puede usar directamente, o envuelta para construir una instalación más estructurada. El sistema de continuaciones de escape reificado es fundamentalmente diferente de la instalación de excepción de EVAL / DIE Nativo de PERL. Con DIE, el código que inicia la transferencia no local no tiene control sobre de dónde irá. Cada cuadro de Evalde decidirá si quiere actuar como objetivo de la excepción lanzada, pero debe hacer que esta decisión se basara casi totalmente en lo que se registró en el objeto de excepción, porque los marcos de pila entre la matriz y la evaluación ya han sido sin renunciar a ese momento. Sin embargo, con continuaciones reificadas, el código que inicia la transferencia determina dónde irá (al elegir qué continuidad usar), y esa decisión se puede hacer con toda la información sobre las circunstancias que aún están disponibles. Aparece una continuación de escape reificada en Perl como un objeto de función. Llamar a la función los resultados de regresar desde el marco de la pila que es el objetivo de la continuación. Los valores pasados ​​a la función se devuelven desde el marco de la pila de destino. Opcionalmente, la continuación puede ser bendecida en el alcance :: Escape :: Clase de continuación. Esta clase proporciona una interfaz basada en métodos para la continuación: la transferencia a través de la continuación y la consulta de su estado, puede realizarse mediante llamadas de métodos en el objeto de continuación. Los métodos también se pueden llamar directamente, ya que las funciones, en las funciones de continuación desinfectante.Synopsis Use Scope :: Escape QW (Current_Escape_Function); $ escape = current_escape_function; ... $ escape -> ($ resultado); Uso Scope :: Escape :: Continuación QW (Current_Escape_Continuation); $ escape = actual_escape_continuation; ... $ escape-> go ($ resultado); Requisitos: · Perl


Alcance :: Escape Software relacionado

fp

Una biblioteca para programar en un estilo funcional ...

190

Descargar