Packages

  • package root
    Definition Classes
    root
  • class ANFSemantics[Abs, Addr, Time] extends Semantics[ANFExp, Abs, Addr, Time]

    Semantics for ANF Scheme (abstract grammar defined in ANF.scala)

    Semantics for ANF Scheme (abstract grammar defined in ANF.scala)

    Definition Classes
    root
c

ANFSemantics

class ANFSemantics[Abs, Addr, Time] extends Semantics[ANFExp, Abs, Addr, Time]

Semantics for ANF Scheme (abstract grammar defined in ANF.scala)

Linear Supertypes
Semantics[ANFExp, Abs, Addr, Time], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ANFSemantics
  2. Semantics
  3. AnyRef
  4. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ANFSemantics(primitives: Primitives[Addr, Abs])(implicit arg0: IsSchemeLattice[Abs], arg1: Address[Addr], arg2: Timestamp[Time])

Type Members

  1. trait ANFFrame extends Frame

    ANF Scheme only has three types of continuation frames: halt, let, and letrec

  2. type Actions = Set[Action[ANFExp, Abs, Addr]]
  3. case class FrameLet(v: Identifier, body: ANFExp, env: Environment[Addr]) extends ANFFrame with Product with Serializable
  4. case class FrameLetrec(v: Identifier, a: Addr, body: ANFExp, env: Environment[Addr]) extends ANFFrame with Product with Serializable

Value Members

  1. implicit def actionToSet(action: Action[ANFExp, Abs, Addr]): Set[Action[ANFExp, Abs, Addr]]
    Definition Classes
    Semantics
  2. def atomicEval(e: ANFAtomicExp, env: Environment[Addr], store: Store[Addr, Abs]): MayFail[(Abs, Set[Effect[Addr]])]

    Performs evaluation of an atomic expression, returning either an error or the produced value

  3. def initialBindings: List[(String, Addr, Abs)]

    Defines the elements in the initial environment/store

    Defines the elements in the initial environment/store

    Definition Classes
    ANFSemanticsSemantics
  4. def initialEnv: Iterable[(String, Addr)]
    Definition Classes
    Semantics
  5. def initialStore: Iterable[(Addr, Abs)]
    Definition Classes
    Semantics
  6. implicit def mfActionToActions(mf: MayFail[Action[ANFExp, Abs, Addr]]): Set[Action[ANFExp, Abs, Addr]]
    Definition Classes
    Semantics
  7. implicit def mfToActions(mf: MayFail[Set[Action[ANFExp, Abs, Addr]]]): Set[Action[ANFExp, Abs, Addr]]
    Definition Classes
    Semantics
  8. def parse(program: String): ANFExp

    Defines how to parse a program

    Defines how to parse a program

    Definition Classes
    ANFSemanticsSemantics
  9. def stepEval(e: ANFExp, env: Environment[Addr], store: Store[Addr, Abs], t: Time): Set[Action[ANFExp, Abs, Addr]]

    Defines what actions should be taken when an expression e needs to be evaluated, in environment env with store store

    Defines what actions should be taken when an expression e needs to be evaluated, in environment env with store store

    Definition Classes
    ANFSemanticsSemantics
  10. def stepKont(v: Abs, frame: Frame, store: Store[Addr, Abs], t: Time): Set[Action[ANFExp, Abs, Addr]]

    Defines what actions should be taken when a value v has been reached, and the topmost frame is frame

    Defines what actions should be taken when a value v has been reached, and the topmost frame is frame

    Definition Classes
    ANFSemanticsSemantics
  11. def stepReceive(self: Any, mname: String, margsv: List[Abs], d: ANFExp, env: Environment[Addr], store: Store[Addr, Abs], t: Time): Set[Action[ANFExp, Abs, Addr]]

    WIP

    WIP

    Definition Classes
    Semantics
  12. object Action extends ActionHelpers[Exp, Abs, Addr]
    Definition Classes
    Semantics