Personally I don't think that really counts. IIUC you can override those names, so they aren't reserved, and you can implement any one of these as a macro so you don't need to remember anything outside of the core language.
(You can't implement them all as macros, but IIRC there are disjoint built-in sets that can give you the full behaviour)