Ada banyak kebingungan dan penyalahgunaan istilah-istilah ini. Seringkali yang satu digunakan untuk mengartikan yang lain. Inilah arti sebenarnya dari istilah-istilah itu.
"Native" mengacu pada jenis yang disertakan dalam bahasa, bukan yang disediakan oleh pustaka (bahkan pustaka standar), terlepas dari bagaimana penerapannya. String Perl adalah bagian dari bahasa Perl, jadi string asli di Perl. C menyediakan semantik string melalui pointer ke chars menggunakan perpustakaan, jadi pointer ke char adalah native, tetapi string tidak.
"Atomic" mengacu pada jenis yang tidak lagi dapat diuraikan. Ini kebalikan dari "komposit" . Komposit dapat diuraikan menjadi kombinasi nilai atom atau komposit lainnya. Bilangan bulat asli dan bilangan floating point adalah atom. Pecahan, bilangan kompleks, wadah / koleksi, dan string adalah gabungan.
"Skalar" - dan ini adalah salah satu yang membingungkan kebanyakan orang - mengacu pada nilai yang dapat menyatakan skala (karena itulah namanya), seperti ukuran, volume, hitungan, dll. Bilangan bulat, bilangan floating point, dan pecahan adalah skalar. Bilangan kompleks, boolean, dan string BUKAN skalar. Sesuatu yang bersifat atom belum tentu skalar dan sesuatu yang skalar belum tentu atom. Skalar bisa asli atau disediakan oleh perpustakaan.
Beberapa jenis memiliki klasifikasi yang aneh. Jenis BigNumber, biasanya diimplementasikan sebagai larik digit atau integer, adalah skalar, tetapi secara teknis tidak atomik. Mereka dapat tampak seperti atom jika penerapannya tersembunyi dan Anda tidak dapat mengakses komponen internal. Tetapi komponennya hanya tersembunyi, jadi atomicity adalah ilusi. Mereka hampir selalu tersedia di perpustakaan, jadi mereka tidak asli, tapi bisa saja. Dalam bahasa pemrograman Mathematica, misalnya, bilangan besar adalah native dan, karena tidak ada cara bagi program Mathematica untuk menguraikannya menjadi blok penyusunnya, bilangan tersebut juga atom dalam konteks itu, meskipun faktanya mereka adalah komposit di bawah sampul (di mana Anda tidak lagi berada di dunia bahasa Mathematica).
Definisi ini tidak bergantung pada bahasa yang digunakan.