Files
2023-11-01 09:29:33 +01:00

4.1 KiB

layout, title, parent, ancestor
layout title parent ancestor
default Variants Composite Funcons-beta

Funcons-beta : Variants.cbs

Variants

[
  Datatype variants
  Funcon   variant
  Funcon   variant-id
  Funcon   variant-value
]
Meta-variables
  T <: values
Datatype
  variants(T) ::= variant(_:identifiers, _:T)

A value of type variants(T) is a pair formed from an identifier and a value of type T.

Funcon
  variant-id(_:variants(T)) : =>identifiers
Rule
  variant-id(variant(I:identifiers, _:T)) ~> I
Funcon
  variant-value(_:variants(T)) : =>T
Rule
  variant-value(variant(_:identifiers, V:T)) ~> V

From the PLanCompS Project | CBS-beta issues... | Suggest an improvement...