Packages

c

be.opimedia.scala_par_am

BaseSchemeSemantics

class BaseSchemeSemantics[V, Addr, Time] extends Semantics[SchemeExp, V, Addr, Time]

Basic Scheme semantics, without any optimization

Linear Supertypes
Semantics[SchemeExp, V, Addr, Time], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BaseSchemeSemantics
  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 BaseSchemeSemantics(primitives: Primitives[Addr, V])(implicit arg0: IsSchemeLattice[V], arg1: Address[Addr], arg2: Timestamp[Time])

Type Members

  1. type Actions = Set[Action[SchemeExp, V, Addr]]
  2. type Env = Environment[Addr]
  3. case class FrameAnd(rest: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  4. case class FrameBegin(rest: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  5. case class FrameCase(clauses: List[(List[SchemeValue], List[SchemeExp])], default: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  6. case class FrameCond(cons: List[SchemeExp], clauses: List[(SchemeExp, List[SchemeExp])], env: Env) extends SchemeFrame with Product with Serializable
  7. case class FrameDefine(variable: Identifier, env: Env) extends SchemeFrame with Product with Serializable
  8. case class FrameDoBody(toeval: List[SchemeExp], vars: List[(Identifier, V, Option[SchemeExp])], test: SchemeExp, finals: List[SchemeExp], commands: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  9. case class FrameDoInit(vars: List[(Identifier, V, Option[SchemeExp])], variable: Identifier, step: Option[SchemeExp], toeval: List[(Identifier, SchemeExp, Option[SchemeExp])], test: SchemeExp, finals: List[SchemeExp], commands: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  10. case class FrameDoStep(vars: List[(Identifier, V, Option[SchemeExp])], variable: Identifier, step: Option[SchemeExp], toeval: List[(Identifier, V, Option[SchemeExp])], test: SchemeExp, finals: List[SchemeExp], commands: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  11. case class FrameDoTest(vars: List[(Identifier, V, Option[SchemeExp])], test: SchemeExp, finals: List[SchemeExp], commands: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  12. case class FrameFuncallOperands(f: V, fexp: SchemeExp, cur: SchemeExp, args: List[(SchemeExp, V)], toeval: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  13. case class FrameFuncallOperator(fexp: SchemeExp, args: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  14. case class FrameIf(cons: SchemeExp, alt: SchemeExp, env: Env) extends SchemeFrame with Product with Serializable
  15. case class FrameLet(variable: Identifier, bindings: List[(Identifier, V)], toeval: List[(Identifier, SchemeExp)], body: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  16. case class FrameLetStar(variable: Identifier, bindings: List[(Identifier, SchemeExp)], body: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  17. case class FrameLetrec(addr: Addr, bindings: List[(Addr, SchemeExp)], body: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  18. case class FrameOr(rest: List[SchemeExp], env: Env) extends SchemeFrame with Product with Serializable
  19. case class FrameSet(variable: Identifier, env: Env) extends SchemeFrame with Product with Serializable
  20. trait SchemeFrame extends Frame
  21. type Sto = Store[Addr, V]

Value Members

  1. implicit def actionToSet(action: Action[SchemeExp, V, Addr]): Set[Action[SchemeExp, V, Addr]]
    Definition Classes
    Semantics
  2. def conditional(v: V, t: ⇒ Actions, f: ⇒ Actions): Actions
  3. def evalCall(function: V, fexp: SchemeExp, argsv: List[(SchemeExp, V)], store: Sto, t: Time): Actions
  4. def evalDoBody(toeval: List[SchemeExp], vars: List[(Identifier, V, Option[SchemeExp])], test: SchemeExp, finals: List[SchemeExp], commands: List[SchemeExp], t: Time, env: Env, store: Sto): Actions
  5. def evalDoStep(vars: List[(Identifier, V, Option[SchemeExp])], toeval: List[(Identifier, V, Option[SchemeExp])], test: SchemeExp, finals: List[SchemeExp], commands: List[SchemeExp], t: Time, env: Env, store: Sto): Actions
  6. def initialBindings: List[(String, Addr, V)]

    Defines the elements in the initial environment/store

    Defines the elements in the initial environment/store

    Definition Classes
    BaseSchemeSemanticsSemantics
  7. def initialEnv: Iterable[(String, Addr)]
    Definition Classes
    Semantics
  8. def initialStore: Iterable[(Addr, V)]
    Definition Classes
    Semantics
  9. implicit def mfActionToActions(mf: MayFail[Action[SchemeExp, V, Addr]]): Set[Action[SchemeExp, V, Addr]]
    Definition Classes
    Semantics
  10. implicit def mfToActions(mf: MayFail[Set[Action[SchemeExp, V, Addr]]]): Set[Action[SchemeExp, V, Addr]]
    Definition Classes
    Semantics
  11. def parse(program: String): SchemeExp

    Defines how to parse a program

    Defines how to parse a program

    Definition Classes
    BaseSchemeSemanticsSemantics
  12. def stepEval(e: SchemeExp, env: Env, store: Sto, t: Time): Set[Action[SchemeExp, V, 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
    BaseSchemeSemanticsSemantics
  13. def stepKont(v: V, frame: Frame, store: Sto, t: Time): Set[Action[SchemeExp, V, 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
    BaseSchemeSemanticsSemantics
  14. def stepReceive(self: Any, mname: String, margsv: List[V], d: SchemeExp, env: Environment[Addr], store: Store[Addr, V], t: Time): Set[Action[SchemeExp, V, Addr]]

    WIP

    WIP

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