Arc Forumnew | comments | leaders | submitlogin
3 points by absz 5918 days ago | link | parent

They're different because they don't actually exist. Observe:

  arc> def
  #3(tagged mac #<procedure>)
  arc> fn
  Error: "reference to undefined identifier: _fn"
Since def is a macro, we can use it anywhere we like. But since fn is not, we can only use it in the head of a list, and it can't be overridden. fn, if, etc. should be first class: if not macros, then (type fn) should be 'prim or some such thing.