Aster Lang सीखें
Aster CNL (Controlled Natural Language) व्यावसायिक नियमों को पठनीय, ऑडिट-योग्य वाक्यों में व्यक्त करने के लिए बनी एक भाषा है। Aster CNL में लिखी policy एक नियतात्मक (deterministic) Core प्रतिनिधित्व में संकलित होती है, जिसे REST API, GraphQL, WebSocket, या सीधे ब्राउज़र में मूल्यांकित किया जा सकता है।
यह अनुभाग पहले संपर्क से लेकर उत्पादन परिनियोजन तक की हर बात कवर करता है।
Aster CNL क्या है?
Aster CNL सामान्य अंग्रेज़ी और पारंपरिक प्रोग्रामिंग भाषाओं के बीच में बैठता है। यह इतना प्रतिबंधात्मक है कि मशीन इसे असंदिग्ध रूप से parse कर सके, फिर भी इतना स्वाभाविक है कि डोमेन विशेषज्ञ — underwriter, compliance अधिकारी, product manager — डेवलपर की सहायता के बिना इसे पढ़ और लिख सकें।
एक न्यूनतम policy ऐसी दिखती है (हिन्दी lexicon में):
मॉड्यूल pricing।
नियम discountedPrice दिया गया amount रूप में पूर्णांक, उत्पन्न पूर्णांक:
यदि amount से अधिक 100
लौटाएं amount गुणा 80 भाग 100।
लौटाएं amount।वही नियम अंग्रेज़ी में:
Module pricing.
Rule discountedPrice given amount as Int, produce Int:
If amount is greater than 100
Return amount times 80 divided by 100.
Return amount.Aster CNL की मुख्य विशेषताएँ:
- नियतात्मक (Deterministic) — वही इनपुट हमेशा वही आउटपुट देता है, बिना किसी साइड-इफ़ेक्ट के।
- ऑडिट-योग्य — हर निर्णय एक SHA-256 हैश-शृंखला से जुड़ा होता है; किसी भी ऐतिहासिक मूल्यांकन को बाइट-दर-बाइट दोबारा चलाया जा सकता है।
- बहुभाषी — एक ही शब्दार्थ English, 中文, Deutsch और हिन्दी में; सभी एक ही Core IR में संकलित होते हैं।
- दोहरा इंजन — Java/Truffle बैकएंड और इन-ब्राउज़र TypeScript इंजन समान परिणाम देते हैं।
तीन प्रथम-श्रेणी अवधारणाएँ
Aster Policy, Workflow और Decision को प्रथम-श्रेणी अवधारणाओं के रूप में मानता है:
- Policy — एक नियम जो इनपुट लेकर परिणाम देता है (पात्रता, मूल्य-निर्धारण, सीमा जाँच)।
- Workflow — चरणों का एक अनुक्रम जिसमें निर्भरता, क्षतिपूर्ति, पुनः-प्रयास और समय-सीमा होती है।
- Decision — एक मूल्यांकित परिणाम, हैश-शृंखलित ऑडिट के साथ दोबारा चलाने योग्य।
आगे कहाँ जाएँ
- CNL त्वरित संदर्भ — कीवर्ड और syntax का संक्षिप्त संदर्भ।
- प्लेग्राउंड — ब्राउज़र में लाइव लिखें और संकलित करें।
- Browser API —
@aster-cloud/aster-lang-tsसे प्रोग्रामेटिक एकीकरण। - परिनियोजन गाइड — स्व-होस्टिंग और उत्पादन परिनियोजन।