I found this quite easy to follow: https://www.buildyourownlisp.com/ for building a not-quite-Scheme in C. I didn't get massively far but only because of the sheer amount of other shiny things.
https://github.com/vibhavp/skeem/blob/master/src/builtins.c#...
The simplicity of the eval function is so cool!