user4035
user4035

Reputation: 23729

Elisp atomic types classification

I was trying to create a classification of atomic types in elisp, based upon this page: Programming Types.

Here is what I've done:

Atomic types:
1. Integer
2. Floating point
3. Character ≡ Integer
4. Symbol

   4.1 Keyword symbol

5. Array

   5.1. String
   5.2. Vector
     5.2.1. Bool vector
   5.3. Char table

6. Hash Table

Questions:

  1. Is my classification full or I missed something?

  2. Arrays and hash tables are considered atomic, despite the fact, that these objects can be divided further. Why?

Code:

(atom "aaa")
;> t

(atom [1 "two" (three)])
;> t

(atom (make-hash-table))
;> t

Upvotes: 4

Views: 81

Answers (1)

d5884
d5884

Reputation: 906

  1. There are lacking keyword-symbol, such as :keyword. It's determined by keywordp.

  2. I think atom is representing "not a list".

Upvotes: 3

Related Questions