Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You start with a Resolver, call Resolver.Execute, and up with a Resolved (which happens to be the same object, but that's really an implementation detail). But the type system doesn't prevent you making further calls to Resolver -- that's one of the illegal uses we'd like to prevent, if I understand the example.

It might work in a language with linear types or some concept of ownership. Execute() would take ownership of the Resolver and prevent it being called again.



Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: