This repository was archived by the owner on Aug 17, 2022. It is now read-only.

Description
Mostly drive by observation, but the explainer currently says:
intertype type definitions are required to be acyclic. This restriction follows from the fact that interface types are meant to be used at inter-language boundaries to copy values and matches the restrictions of other IPC/RPC schema languages.
I am not sure it’s fair to say that the restriction (logically) follows from IPC requirement: there are IPC/RPC systems which are fine with recursive type. To give one example from a domain I am familiar with, DocumetSymbol from language server protocol is sent over the wire and is recursive. Apparently, protobuf also allows recursive types: https://stackoverflow.com/questions/5945136/self-referencing-fields-in-protobuf-messages