Is there a good way to encode linear types in OCaml?

One more update - GHC-9.0.1-alpha preliminary release was announced.

GHC 9.0.1 will bring a long wanted linear types:

  • A first cut of the new LinearTypes language extension, allowing
    use of linear function syntax and linear record fields.

See also their roadmap.