Skip to content

LAM Specification Status #5

@leostera

Description

@leostera

One of the goals of LAM is to be formally specified.

This will allow other implementations to appear that are interchangeable with it, and will allow us to reason mathematically about their expected behaviors.

Instruction Set

Control Flow

  • Badmatch
  • Call
  • ConditionalJump
  • Halt
  • Jump
  • Label
  • Return
  • TailCall
  • Test

Values

  • ConsList
  • GetMapElements
  • GetTupleElement
  • MakeLambda
  • MakeTuple
  • SplitList
  • SplitListHead
  • SplitListTail

Processes & Message Passing

  • Kill
  • Monitor
  • PeekMessage
  • PidSelf
  • RemoveMessage
  • Send
  • Sleep
  • Spawn

Register Machine

  • Allocate
  • Clear
  • Deallocate
  • Move
  • RestoreLocals
  • ShiftLocals
  • Swap

Scheduler

  • Boot
  • Step

Scheduler Coordinator

  • Setup
  • Step
  • Halt

Metadata

Metadata

Assignees

No one assigned

    Labels

    specRelated to the specification of LAMtrackingThis issue is used for tracking status

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions