Skip to content

Self-returning types check forever #11

@brandonzstride

Description

@brandonzstride

They cause an infinite loop of checking.

let t = Mu t. { f : int -> t }
let g (x : t) : bool =
  let _ : t = x in
  0

The evaluation never reaches 0 because it gets stuck checking t.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions