Education

The Developer's Guide to Abjad Numerals (Hisab al-Jummal)

Abdulaziz Yahya 6 min read
## What is Hisab al-Jummal? Hisab al-Jummal (حساب الجُمَّل) is a system of assigning numerical values to the 28 letters of the Arabic alphabet. It's one of the oldest numeral systems still in active use, dating back to at least the 8th century. The system is used in: - **Islamic scholarship** — encoding dates in phrases, verse numbering - **Chronograms** — hiding dates in poetry or inscriptions - **Numerology** — calculating the "value" of names and phrases - **Calligraphy** — decorative number representation ## The Abjad Values The 28 Arabic letters map to values following the ancient Abjad order (not the modern alphabetical order): | Letter | Name | Value | Letter | Name | Value | |--------|------|-------|--------|------|-------| | ا | Alif | 1 | ط | Ṭāʾ | 9 | | ب | Bāʾ | 2 | ي | Yāʾ | 10 | | ج | Jīm | 3 | ك | Kāf | 20 | | د | Dāl | 4 | ل | Lām | 30 | | ه | Hāʾ | 5 | م | Mīm | 40 | | و | Wāw | 6 | ن | Nūn | 50 | | ز | Zayn | 7 | س | Sīn | 60 | | ح | Ḥāʾ | 8 | ع | ʿAyn | 70 | | ط | Ṭāʾ | 9 | ف | Fāʾ | 80 | | | | | ص | Ṣād | 90 | | | | | ق | Qāf | 100 | | | | | ر | Rāʾ | 200 | | | | | ش | Shīn | 300 | | | | | ت | Tāʾ | 400 | | | | | ث | Thāʾ | 500 | | | | | خ | Khāʾ | 600 | | | | | ذ | Dhāl | 700 | | | | | ض | Ḍād | 800 | | | | | ظ | Ẓāʾ | 900 | | | | | غ | Ghayn | 1000 | ## Implementation in Python ```python ABJAD = { 'ا': 1, 'ب': 2, 'ج': 3, 'د': 4, 'ه': 5, 'و': 6, 'ز': 7, 'ح': 8, 'ط': 9, 'ي': 10, 'ك': 20, 'ل': 30, 'م': 40, 'ن': 50, 'س': 60, 'ع': 70, 'ف': 80, 'ص': 90, 'ق': 100, 'ر': 200, 'ش': 300, 'ت': 400, 'ث': 500, 'خ': 600, 'ذ': 700, 'ض': 800, 'ظ': 900, 'غ': 1000, # Variants 'أ': 1, 'إ': 1, 'آ': 1, 'ة': 5, 'ى': 10, 'ئ': 10, 'ؤ': 6, } def jummal(text: str) -> int: """Calculate the Jummal value of Arabic text.""" return sum(ABJAD.get(c, 0) for c in text) # Example print(jummal('بسم الله')) # 168 print(jummal('محمد')) # 92 ``` ## Implementation in Dart/Flutter ```dart const Map abjad = { 'ا': 1, 'ب': 2, 'ج': 3, 'د': 4, 'ه': 5, 'و': 6, 'ز': 7, 'ح': 8, 'ط': 9, 'ي': 10, 'ك': 20, 'ل': 30, 'م': 40, 'ن': 50, 'س': 60, 'ع': 70, 'ف': 80, 'ص': 90, 'ق': 100, 'ر': 200, 'ش': 300, 'ت': 400, 'ث': 500, 'خ': 600, 'ذ': 700, 'ض': 800, 'ظ': 900, 'غ': 1000, // Variants 'أ': 1, 'إ': 1, 'آ': 1, 'ة': 5, 'ى': 10, }; int jummalValue(String text) { return text.runes .map((r) => String.fromCharCode(r)) .map((c) => abjad[c] ?? 0) .fold(0, (a, b) => a + b); } ``` ## Real-World Application: Jummal Calculator App We built the **Jummal Calculator** app to make Hisab al-Jummal accessible to everyone — scholars, students, calligraphers, and anyone curious about the numeric values hidden in Arabic text. The app features: - **Instant calculation** as you type - **Word-by-word breakdown** showing each letter's value - **Comparison mode** to check if two phrases have equal values - **History** of previous calculations - **Share** results as beautiful cards Download it free on [Google Play](https://play.google.com/store/apps/details?id=com.azizwares.jummal). ## The Beauty of Chronograms One of the most elegant uses of Abjad numerals is the chronogram (تاريخ شعري) — a phrase whose letter values sum to a meaningful date. Islamic scholars and poets would compose phrases where the Jummal value encodes the year of an event. For example, a poet commemorating an event in 1200 AH might compose a phrase whose letters sum to exactly 1200. ## Conclusion Hisab al-Jummal is more than a numbering system — it's a bridge between mathematics and language, between computation and culture. Understanding it enriches your appreciation of Arabic calligraphy, Islamic manuscripts, and the deep mathematical tradition in Arabic scholarship. --- *Try it yourself with the [Jummal Calculator](https://play.google.com/store/apps/details?id=com.azizwares.jummal) app by AzizWares.*
Tags: Abjad Jummal Arabic Mathematics Islamic Numerals History