On Tue, Sep 20, 2022 at 12:16 PM Michel Pelletier <pelletier.mic...@gmail.com> wrote: > This non-standard format
FWIW, it derives from Lisp s-expressions, but deviates from Lisp's default reader/printer behaviour in small ways, including being case sensitive and using {NAME :x 1 ...} instead of #S(NAME :x 1 ...) for structs for reasons that are lost AFAIK (there's a dark age between the commit history of the old Berkeley repo and our current repo, and it looks like plan nodes were still printed as #(NAME ...) at Berkeley). At some point it was probably exchanging data between the Lisp and C parts of POSTGRES, and you could maybe sorta claim it's based on an ANSI standard (Lisp!), but not with a straight face :-)