@krans @dpk Very insightful, indeed.
Guix has developed a kitchen-sink syntactic record layer atop SRFI-9 (which is itself implemented in terms of Guile records). It has delayed and thunked fields, field value “sanitizers”, record “inheritance” (essentially functional setters), and more.
https://git.savannah.gnu.org/cgit/guix.git/tree/guix/records.scm#n285