Bonus Marks


  • › What are the four typical steps for adding new language features?
  • › Create a Macro specifically for testing for the incorrect number of arguments.
  • › Create a Macro specifically for testing for being called with the empty list.
  • › Add a builtin function cons that takes a value and a Q-Expression and appends it to the front.
  • › Add a builtin function len that returns the number of elements in a Q-Expression.
  • › Add a builtin function init that returns all of a Q-Expression except the final element.