Hyperlang.Program (Hyperlang v0.1.0)

Copy Markdown View Source

An immutable, content-addressed guest program.

Hyperlang.program/1,2 returns this struct. Treat it as an opaque value: pass it to Hyperlang.run/4 or Hyperlang.module/1, and compare or cache it by content_hash. The same source and manifest always produce an equal program. metadata holds public program metadata (declared exports, the normalized manifest summary and the source snapshot listing); it never names generated modules or helpers.

Summary

Types

t()

An immutable compiled program value.

Types

t()

@type t() :: %Hyperlang.Program{
  artifact: term(),
  compiler_version: term(),
  content_hash: term(),
  manifest_hash: term(),
  metadata: term(),
  source_hash: term(),
  stdlib_version: term()
}

An immutable compiled program value.