WRT 3, assoc lists are just the simplest thing to store things like environments, they&#x27;re traditional for &quot;writing a Lisp in one week&quot;.  If you modulerize your code, you can trivially use hash tables or whatever later.  Ditto using lists for structures.<p>4: As I understand it, there are <i>many</i> macro systems available for Scheme.  It&#x27;s one of the languages in which &quot;hygienic&quot; macros has been explored, etc.  So if you don&#x27;t like the femtolisp bundled version, there might be another out there more to your taste.