PreviousUpNext

15.3.485  src/lib/std/src/nj/fate.api

## fate.api
#
# Support for call/cc type stuff.  The literature
# refers to "continuations";  for brevity we call
# them "fates".

# Compiled by:
#     src/lib/std/src/standard-core.sublib



# This api is implemented in:
#
#     src/lib/std/src/nj/fate.pkg
#
api Fate {
    #
    Fate(X);

    call_with_current_fate
        :
        (Fate(X) -> X) -> X;

    resume_fate
        :
        Fate(X) -> X -> Y;

    # A function for creating an isolated fate from a function
    #
    make_isolated_fate
        :
        (X -> Void) -> Fate(X);

    # Versions of the fate operations
    # that do not capture/restore the
    # exception handler context.
    #
    Control_Fate(X);
    capture_fate:  (Control_Fate(X) -> X) -> X;
    throw_fate:     Control_Fate(X) -> X  -> Y;
};




## COPYRIGHT (c) 1995 AT&T Bell Laboratories.
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2012,
## released under Gnu Public Licence version 3.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext