
  -spec is_record(Term, RecordTag) -> boolean()
                     when Term :: term(), RecordTag :: atom().

  Returns true if Term is a tuple and its first element is 
  RecordTag. Otherwise returns false.

  Note:
    Normally the compiler treats calls to is_record/2
    especially. It emits code to verify that Term is a tuple,
    that its first element is RecordTag, and that the size is
    correct. However, if RecordTag is not a literal atom, the
    BIF is_record/2 is called instead and the size of the tuple
    is not verified.

  Allowed in guard tests, if RecordTag is a literal atom.
