Comment by ookdatnog
If you have some time to spare, read SICP [0] and do the exercises :) (probably easiest to use DrRacket [1] as the interpreter)
[0] https://mitp-content-server.mit.edu/books/content/sectbyfn/b...
[1] https://docs.racket-lang.org/sicp-manual/SICP_Language.html