Trait

it.unibo.scafi.core

Semantics

Related Doc: package core

Permalink

trait Semantics extends Core with Language

This trait defines a component that extends Core and Language It starts concretising the framework by implementing the key element of field-calculus semantics, namely: - An export is a map from paths to values, and a value is a list of slots - An Execution template implementing the whole operational semantics - A basic Factory - Additional ops to Context and Export, realised by family polymorphism

This is still abstract in that we do not dictate how Context and Export are implemented and optimised internally

Linear Supertypes
Language, Core, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Semantics
  2. Language
  3. Core
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait AggregateProgramSchema extends ProgramSchema

    Permalink
  2. abstract type CONTEXT <: Context with ContextOps

    Permalink

    The input of a computation round in a node Bounded as of Context interface

    The input of a computation round in a node Bounded as of Context interface

    Definition Classes
    SemanticsCore
  3. trait Constructs extends AnyRef

    Permalink

    A field-calculus "behaviour" inherits from this trait.

    A field-calculus "behaviour" inherits from this trait. Differences wrt the paper version are: - foldhood is given a "universal quantification" semantics - neighbour exposes whether we are in one such quantification - mid is so foundational that we put it here

    A consequence is that we do not have field types, only locals: so we integrate at best with Scala

    Definition Classes
    Language
  4. trait ConstructsSemantics extends Constructs

    Permalink
  5. trait Context extends AnyRef

    Permalink
    Definition Classes
    Core
  6. trait ContextOps extends AnyRef

    Permalink
  7. abstract type EXECUTION <: ExecutionTemplate

    Permalink

    A computation round, as an I/O function

    A computation round, as an I/O function

    Definition Classes
    SemanticsCore
  8. abstract type EXPORT <: Export with ExportOps

    Permalink

    The output of a computation round in a node Bounded to have at least a root element, as of Export interface

    The output of a computation round in a node Bounded to have at least a root element, as of Export interface

    Definition Classes
    SemanticsCore
  9. trait ExecutionTemplate extends (CONTEXT) ⇒ EXPORT with ConstructsSemantics with ProgramSchema

    Permalink

    It implements the whole operational semantics.

  10. trait Export extends AnyRef

    Permalink
    Definition Classes
    Core
  11. trait ExportOps extends AnyRef

    Permalink
  12. abstract type FACTORY <: Factory

    Permalink
  13. trait Factory extends AnyRef

    Permalink
  14. sealed case class FoldHood[A](index: Int) extends Slot with Product with Serializable

    Permalink
  15. sealed case class FunCall[A](index: Int, funId: Any) extends Slot with Product with Serializable

    Permalink
  16. abstract type ID

    Permalink

    The unique identifier of a node

    The unique identifier of a node

    Definition Classes
    Core
  17. abstract type LSNS

    Permalink

    Name of local sensors (sensors receiving information from a node)

    Name of local sensors (sensors receiving information from a node)

    Definition Classes
    Core
  18. abstract type NSNS

    Permalink

    Name of neighbourhood sensors (sensors receiving information from neighbours, like estimated distances)

    Name of neighbourhood sensors (sensors receiving information from neighbours, like estimated distances)

    Definition Classes
    Core
  19. sealed case class Nbr[A](index: Int) extends Slot with Product with Serializable

    Permalink
  20. case class NbrSensorUnknownException(selfId: Semantics.ID, name: Semantics.NSNS, nbr: Semantics.ID) extends Exception with Product with Serializable

    Permalink
  21. case class OutOfDomainException(selfId: Semantics.ID, nbr: Semantics.ID, path: Path) extends Exception with Product with Serializable

    Permalink
  22. trait Path extends AnyRef

    Permalink
  23. trait ProgramSchema extends AnyRef

    Permalink
  24. sealed case class Rep[A](index: Int) extends Slot with Product with Serializable

    Permalink
  25. trait RoundVM extends AnyRef

    Permalink
  26. class RoundVMImpl extends RoundVM

    Permalink
  27. sealed case class Scope[K](key: K) extends Slot with Product with Serializable

    Permalink
  28. case class SensorUnknownException(selfId: Semantics.ID, name: Semantics.LSNS) extends Exception with Product with Serializable

    Permalink
  29. trait Slot extends Serializable

    Permalink

Abstract Value Members

  1. implicit abstract val factory: Factory

    Permalink

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object RoundVMImpl

    Permalink
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  17. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  18. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Language

Inherited from Core

Inherited from AnyRef

Inherited from Any

Ungrouped