प्रोग्रामिंग लैंग्वेजेज की तुलना (वाक्यविन्यास)

प्रोग्रामिंग लैंग्वेजेज की यह तुलना 50 से अधिक कंप्यूटर प्रोग्रामिंग लैंग्वेजेज के लिए सिंटेक्स (फॉर्मेट) की विशेषताओं की तुलना करती है।

एक्सप्रेशंस
प्रोग्रामिंग लैंग्वेज एक्सप्रेशंस को मोटे तौर पर चार सिंटेक्स स्ट्रक्चरों में वर्गीकृत किया जा सकता है:


 * प्रीफिक्स नोटेशन
 * लिस्प
 * इन्फिक्स नोटेशन
 * फोरट्रान
 * सफिक्स, पोस्टफिक्स, या रिवर्स पोलिश नोटेशन
 * फोर्थ
 * मैथ-लाइक नोटेशन
 * ट्यूटर

स्टेटमेंट
जब किसी प्रोग्रामिंग लैंग्वेजेज में स्टेटमेंट होता है, तो उनके पास सामान्यतः इसके लिए कन्वेंशन होते हैं:


 * स्टेटमेंट सेपटर्स;
 * स्टेटमेंट टर्मिनेटर; और
 * लाइन कॉन्टीनुअशन

एक स्टेटमेंट सेपटर्स दो अलग-अलग स्टेटमेंटो के मध्य सीमा का सीमांकन करता है। एक स्टेटमेंट टर्मिनेटर एक इंडिविजुअल स्टेटमेंट के अंत को परिभाषित करता है। वे लैंग्वेज जो लाइन के अंत को किसी स्टेटमेंटो का अंत मानती हैं, लाइन-ओरिएंटेड लैंग्वेज कहलाती हैं।

लाइन कॉन्टीनुअशन लाइन-ओरिएंटेड लैंग्वेजेज में एक कन्वेंशन है जहां न्यूलाइन करैक्टर को स्टेटमेंट टर्मिनेटर के रूप में संभावित रूप से गलत समझा जा सकता है। ऐसे लैंग्वेजेज में, यह एक ही स्टेटमेंट को केवल एक लाइन से अधिक फैलाने की अनुमति देता है।

लाइन कॉन्टीनुअशन
लाइन कॉन्टीनुअशन सामान्यतः लेक्सिकल एनालिसिस के भाग के रूप में की जाती है: एक न्यूलाइन के परिणामस्वरूप सामान्यतः टोकन स्ट्रीम में एक टोकन जोड़ा जाता है, जब तक कि लाइन कॉन्टीनुअशन का पता नहीं चलता।


 * वाइटस्पेस करैक्टर - ऐसी लैंग्वेज जिन्हें कॉन्टीनुअशन की आवश्यकता नहीं है:
 * एडा - लाइन्स सेमीकोलन से समाप्त होती हैं।
 * सी# - लाइन्स सेमीकोलन से समाप्त होती हैं।
 * जावास्क्रिप्ट - लाइन्स सेमीकोलन से समाप्त होती हैं (जिसका अनुमान लगाया जा सकता है)।
 * लुआ
 * ओकैमल


 * एम्पसेंड लाइन के लास्ट करैक्टर के रूप में
 * फोरट्रान 90, फोरट्रान 95, फोरट्रान 2003, फोरट्रान 2008


 * लाइन के लास्ट करैक्टर के रूप में बैकस्लैश
 * बैश (यूनिक्स शेल) और अन्य यूनिक्स शैल
 * सी और सी++ प्रीप्रोसेसर
 * मेथेमेटिका और वोल्फ्राम लैंग्वेज
 * पायथन
 * रूबी
 * जावास्क्रिप्ट - केवल एकल- या दोहरे-उद्धृत स्ट्रिंग के भीतर


 * लाइन के लास्ट करैक्टर के रूप में बैकटिक
 * पावरशेल


 * लाइन के लास्ट करैक्टर के रूप में हैफ़ेन
 * एसक्यूएल*प्लस


 * लाइन के लास्ट करैक्टर के रूप मेंअंडरस्कोर
 * ऑटोआईट
 * कोबरा
 * विसुअल बेसिक
 * ज़ोजो


 * एलिप्सिस (तीन अवधियों के रूप में एक स्पेशल करैक्टर नहीं)
 * मैटलैब: इलिप्सिस टोकन को लाइन पर लास्ट करैक्टर होने की आवश्यकता नहीं है, लेकिन इसके बाद आने वाले किसी भी करैक्टर को इग्नॉर कर दिया जाएगा। संक्षेप में, यह एक कमेंट प्रारंभ करता है जो पहले बाद वाले न्यूलाइन करैक्टर तक विस्तारित होता है (अर्थात, इसमें सम्मिलित होता है)। एक इनलाइन कमेंट के साथ इसकी तुलना करें, जो पहले बाद वाले न्यूलाइन तक विस्तारित होती है।


 * लाइन के लास्ट करैक्टर के रूप में कॉमा डिलिमिटर
 * रूबी (कमेंट डिलिमिटर का अनुसरण कर सकती है)


 * लाइन के लास्ट करैक्टर के रूप में लेफ्ट ब्रैकेट डिलिमिटर
 * बैच फ़ाइल: एक ब्रैकेट ब्लॉक प्रारंभ करने से लाइन को जारी रखने की अनुमति मिल सकती है।
 * रूबी: लेफ्ट ब्रैकेट, लेफ्ट स्क्वायर ब्रैकेट, या लेफ्ट कर्ली ब्रैकेट


 * लाइन के अंतिम ऑब्जेक्ट के रूप में ऑपरेटर
 * रूबी (कमेंट ऑपरेटर का अनुसरण कर सकती है)


 * लाइन के फर्स्ट करैक्टर के रूप में ऑपरेटर
 * ऑटोहॉटकी: ++ और --, साथ ही कॉमा या पीरियड को छोड़कर कोई भी एक्सप्रेशन ऑपरेटर
 * कन्टिन्यूड लाइन के फर्स्ट करैक्टर के रूप में बैकस्लैश
 * विम्सस्क्रिप्ट

इनलाइन कमेंटों का कुछ रूप लाइन कॉन्टीनुअशन के रूप में कार्य करता है

 * टर्बो असेंबलर:
 * एम4:
 * टीएक्स:
 * करैक्टर पोजीशन
 * फोरट्रान 77: यदि कॉलम 6 में कोई नॉन-स्पेस करैक्टर दिखाई देता है तो एक नॉन-कमेंट लाइन पिछली नॉन-कमेंट लाइन की कॉन्टीनुअशन है। कमेंट लाइन्स को जारी नहीं रखा जा सकता है।
 * कोबोल: स्ट्रिंग कांस्टेंट को पिक्चर क्लॉज में ओरिजिनल स्ट्रिंग को ,के साथ समाप्त न करके, फिर कॉलम 7 में    इन्सर्टकर जारी रखा जा सकता है( कमेंट के लिए   के समान स्थिति का उपयोग किया जाता है)।
 * ट्यूटर: एक टैब से प्रारंभ होने वाली लाइनें (संदर्भ द्वारा आवश्यक किसी भी इंडेंटेशन के बाद) पिछले कमांड को जारी रखती हैं।


 * [अंत और आरंभ] सामान्य कोट्स चिह्नों का उपयोग करते हुए
 * सी और सी++ प्रीप्रोसेसर: स्ट्रिंग सामान्य रूप से समाप्त हो जाती है और अगली लाइन पर एक कोट्स के साथ प्रारंभ होकर जारी रहती है।

लाइब्रेरी
लाइब्रेरी को इम्पोर्ट करना, संभवतः कपिलेड, रूटीन, प्रोग्राम या पैकेज के रीड एक्सटर्नल एक तरीका है। इम्पोर्ट्स को स्तर (मॉड्यूल, पैकेज, क्लास, प्रोसीजर,...) और सिंटैक्स (डायरेक्टिव नेम, ऐट्रिब्यूट्स,...) द्वारा वर्गीकृत किया जा सकता है।


 * फ़ाइल इम्पोर्ट
 * मेटलैब
 * COPY    filename. कोबोल
 * प्रोलॉग
 * एएसपी
 * , ऑटोहॉटकी, ऑटोइट, सी, सी++
 * ऑटोहॉटकी, ऑटोइट, सी, सी++
 * , ऑब्जेक्टिव सी
 * ऑब्जेक्टिव सी
 * Import["filename"] मेथेमेटिका और वोल्फ्राम लैंग्वेज
 * include  'filename' फोरट्रान
 * पीएचपी
 * , पिक बेसिक
 * पिक बेसिक
 * रस्ट
 * रूबी
 * load %filename रेड
 * लुआ
 * पर्ल, पीएचपी
 * require "filename" रूबी
 * source(""filename"") आर


 * पैकेज इम्पोर्ट
 * सी, सी++
 * , रस्ट
 * ऑब्जेक्टिव सी
 * मेथेमेटिका और वोल्फ्राम लैंग्वेज
 * :-use_module(module). प्रोलॉग:
 * पायथन
 * , रस्ट
 * रस्ट
 * , रस्ट
 * ओबेरॉन
 * गो
 * , डी
 * डी
 * , हास्केल
 * हास्केल
 * जावा, मेटलैब, कोटलिन
 * जावास्क्रिप्ट:
 * , जावास्क्रिप्ट:
 * स्काला
 * , स्काला
 * स्विफ्ट
 * , पायथन
 * लुआ
 * require "gem", रूबी
 * , फोरट्रान 90+
 * फोरट्रान 90+
 * , पर्ल
 * पर्ल
 * कोबरा
 * पास्कल
 * एडा


 * क्लास इम्पोर्ट
 * पायथन
 * जावा, मेटलैब, कोटलिन
 * , जावास्क्रिप्ट
 * , जावास्क्रिप्ट
 * जावास्क्रिप्ट
 * , स्काला
 * , स्काला
 * स्काला
 * , पीएचपी
 * पीएचपी


 * प्रोसीजर/फंक्शन इम्पोर्ट
 * पायथन
 * , डी
 * डी
 * हास्केल:
 * , जावास्क्रिप्ट:
 * , जावास्क्रिप्ट:
 * जावास्क्रिप्ट
 * मेटलैब:
 * , स्काला:
 * स्काला:
 * use Module ('symbol'); पर्ल
 * , पीएचपी:
 * पीएचपी:
 * , रस्ट:
 * , रस्ट:
 * रस्ट:


 * कांस्टेंट इम्पोर्ट
 * पीएचपी

उपरोक्त स्टेटमेंटो को इस आधार पर भी वर्गीकृत किया जा सकता है कि क्या वे सिंटैक्टिक कन्वेनैंस हैं (चीज़ों को छोटे नाम से संदर्भित करने की अनुमति देते हैं, लेकिन उन्हें अभी भी इम्पोर्ट के बिना कुछ पूर्णतः योग्य नाम से संदर्भित किया जा सकता है), या क्या उन्हें वास्तव में एक्सेस कोड करने की आवश्यकता है (जिसके बिना कोड तक पहुंचना असंभव है, यहां तक ​​कि पूर्णतया से योग्य नामों के साथ भी)।


 * सिंटैक्टिक कन्वेनैंस
 * जावा
 * जावा
 * ओकैमल


 * एक्सेस कोड के लिए आवश्यक है
 * गो
 * जावास्क्रिप्ट
 * पायथन

ब्लॉक
एक ब्लॉक दो या दो से अधिक स्टेटमेंटो, एक्सप्रेशनों या कोड की अन्य यूनिट के समूह के लिए एक नोटेशन है जो इस तरह से संबंधित होते हैं कि एक संपूर्ण को समाहित करते हैं।

कर्ली ब्रैकेट प्रोग्रामिंग लैंग्वेज लैंग्वेज: सी, सी++, ऑब्जेक्टिव-सी, गो, जावा, जावास्क्रिप्ट/ईसीएमएस्क्रिप्ट, सी#, डी, पर्ल, पीएचपी ( &   लूप, या किसी ब्लॉक को तर्क के रूप में पास), आर, रस्ट, स्काला, एस-लैंग, स्विफ्ट, पावरशेल, हास्केल (डू-नोटेशन में), ऑटोहॉटकी हैं।
 * ब्रेसेस (उपनाम, कर्ली ब्रैकेट)  ...  :


 * ब्रैकेट  ...
 * बैच फ़ाइल, एफ# (लाइटवेट सिंटैक्स), ओकैमल, प्रोलॉग, स्टैण्डर्ड एमएल
 * स्क्वायर ब्रैकेट  ...
 * रेबोल, रेड, सेल्फ, स्मॉलटॉक (ब्लॉक फर्स्ट क्लास उपनाम ​​क्लोजर के ऑब्जेक्ट हैं)
 * एडीए, ऐल्गॉल, एफ# (वर्बोज़ सिंटैक्स), पास्कल, रूबी (,  &   लूप्स), ओकैमल, एससीएल, सिमुला, एरलांग
 * पीएल/आई, आरईएक्सएक्स
 * बैश (यूनिक्स शेल) ( &   लूप्स), एफ# (वर्बोज़ सिंटैक्स) विजुअल बेसिक, फोरट्रान, ट्यूटर (ब्लॉक बॉडी के अनिवार्य इंडेंटिंग के साथ), विजुअल प्रोलॉग हैं।
 * लुआ, रूबी (तर्क के रूप में ब्लॉक पास,  लूप), सीड7 (लूप बॉडी को मध्य  और  में घेरता है)
 * X ... (उदा   ...  ):
 * रूबी (, ,  ,  ,  ,   स्टेटमेंट्स), ओकैमल (  &   लूप्स), मेटलैब (  &   कंडीशनल,   &   लूप,   क्लॉज़,  ,  ,  ,  ,  , &   ब्लॉक), लुआ (  /   &  )
 * स्कीम
 * (progn...):
 * लिस्प
 * क्लोजर
 * स्कीम
 * (progn...):
 * लिस्प
 * क्लोजर
 * क्लोजर
 * क्लोजर


 * इंडेंटेशन
 * ऑफ-साइड रूल लैंग्वेज: बू, कोबरा, कॉफ़ीस्क्रिप्ट, एफ#, हास्केल (इन डू- जब ब्रेसिज़ छोड़े जाते हैं तो नोटेशन), लाइवस्क्रिप्ट, ओकैम, पायथन, नेमेरले (वैकल्पिक; यदि उपयोगकर्ता चाहें तो कर्ली-ब्रेस सिंटैक्स के बजाय व्हाइट-स्पेस सेंसिटिव सिंटैक्स का उपयोग कर सकते हैं) , निम, स्काला (वैकल्पिक, जैसा कि नेमर्ले में है)।
 * फ्री-फ़ॉर्म लैंग्वेज: ऐल्गॉल के अधिकांश डेस्केन्डेंट्स (C, पास्कल और पर्ल सहित); लिस्प लैंग्वेज हैं।


 * अन्य
 * एडा, विजुअल बेसिक, सीड7:  ...
 * एपीएल:  ...   या   ...
 * बैश, एसएच और केएसएच :   ... ,   ...  ,   ...  ;
 * अल्गोल 68:  ... ,   ...  ,   ...  ,   ...
 * लुआ, पास्कल, मॉड्यूल-2, सीड7:  ...
 * कोबोल:  ... ,   ...  , आदि स्टेटमेंटो के लिए; ...   सेंटेन्सो के लिए,
 * विजुअल बेसिक .नेट:  ... ,   ...  ,   ...
 * स्माल बेसिक:  ... ,   ...  ,   ...

कमेंट
कमेंट को इसके द्वारा वर्गीकृत किया जा सकता है:
 * स्टाइल (इनलाइन/ब्लॉक)
 * पार्स रूल्स (इग्नॉर्ड/इंटरपोलेटेड/मेमोरी में संग्रहीत)
 * रेकुर्सीविटी (नेस्टेबल/नॉन-नेस्टेबल)
 * उसेस (डॉस्टरिंग/थ्रोअवै कमेंट/अन्य)

इनलाइन कमेंट
इनलाइन कमेंट सामान्यतः वे होती हैं जो किसी कमेंट के अंत को इंगित करने के लिए एक न्यूलाइन करैक्टर का उपयोग करती हैं और एक कमेंट के प्रारम्भ को इंगित करने के लिए एक आर्बिट्रेरी डिलिमिटर या टोकन का अनुक्रम हैं।

उदाहरण:

कमेंट ब्लॉक
ब्लॉक कमेंट सामान्यतः वे होती हैं जो किसी कमेंट के प्रारम्भ को इंगित करने के लिए एक डिलिमिटर का उपयोग करती हैं और किसी कमेंट के अंत को इंगित करने के लिए एक अन्य डिलिमिटर का उपयोग करती हैं। इस संदर्भ में, व्हाइटस्पेस करैक्टर और न्यूलाइन करैक्टरो को डिलिमिटर के रूप में काउंट नहीं किया जाता है। उदाहरणों में, सिंबल ~ कमेंट का प्रतिनिधित्व करता है; और, इसके आस-पास के सिम्बलों को इंटरप्रेटरों/कम्पाइलरों द्वारा डिलिमिटर के रूप में समझा जाता है।

उदाहरण:

यूनिक वेरिएंट

 * फोरट्रान
 * फोरट्रान 66/77 में इंडेंटिंग लाइनें महत्वपूर्ण हैं। एक्चुअल स्टेटमेंट एक लाइन के कॉलम 7 से 72 में है। कॉलम 6 में कोई भी नॉन-स्पेस करैक्टर इंगित करता है कि यह लाइन पिछली लाइन की निरंतरता है। A ' ' कॉलम 1 में यह दर्शाया गया है कि यह इन्टाइअर लाइन एक कमेंट है। कॉलम 1 यद्यपि 5 में एक संख्या हो सकती है जो एक लेबल के रूप में कार्य करती है। कॉलम 73 हालांकि 80 को इग्नोर कर दिया गया है और कमेंटों के लिए उपयोग किया जा सकता है; पंच्ड कार्ड के दिनों में, इन कॉलमों में प्रायः एक अनुक्रम संख्या होती थी ताकि यदि कोई गलती से कार्ड गिरा दे तो कार्डों के डेक को सही क्रम में क्रमबद्ध किया जा सके। फोरट्रान 90 ने इंडेंटेशन रूल की आवश्यकता को हटा दिया और इसका उपयोग करते हुए इनलाइन कमेंट जोड़ीं , कमेंट डिलिमिटर के रूप में करैक्टर हैं।


 * कोबोल
 * फिक्स्ड फॉर्मेट कोड में, लाइन इंडेंटेशन महत्वपूर्ण है। कॉलम 1-6 और 73 से आगे के कॉलमों को इग्नोर कर दिया गया है। यदि एक  या   कॉलम 7 में है, तो वह लाइन एक कमेंट है। कोबोल 2002 तक, यदि a   या   कॉलम 7 में था, यह एक डिबगिंग लाइन को परिभाषित करेगा जिसे तब तक इग्नोर कर दिया जाएगा जब तक कि कंपाइलर को इसे संकलित करने का निर्देश न दिया जाए।


 * कोबरा
 * कोबरा  ...   के साथ ब्लॉक कमेंटों का समर्थन करता है जो कि   ...   जैसा है, लेकिन दो अंतरों के साथ जो प्रायः सी-बेस्ड लैंग्वेजेज में पाया जाता है। सिंगल-लाइन कमेंट फ़ॉर्म   ... से   करैक्टरो का पुन: उपयोग किया जाता है और ब्लॉक कमेंटों को नेस्ट किया जा सकता है जो कोड के बड़े ब्लॉकों पर कमेंट करने के लिए सुविधाजनक है।


 * कर्ल
 * कर्ल यूजर-डिफाइंड टैग के साथ कमेंटों को ब्लॉक करने का समर्थन करता है जैसे  हैं।


 * लुआ
 * रॉ स्ट्रिंग्स की तरह, स्क्वायर ब्रैकेटों के मध्य किसी भी संख्या में समान चिह्न हो सकते हैं, बशर्ते कि ओपनिंग और क्लोजिंग टैग दोनों में समान चिह्नों की मिलान संख्या हो; यह तब तक नेस्टिंग की अनुमति देता है जब तक नेस्टेड ब्लॉक कमेंट/रॉ स्ट्रिंग्स अपनी एनक्लोसिंग कमेंट:  की तुलना में भिन्न संख्या में समान चिह्नों का उपयोग करती हैं। लुआ फर्स्ट न्यूलाइन (यदि उपस्थित है) को हटा देता है जो सीधे ओपनिंग टैग का अनुसरण करती है।


 * पर्ल
 * पर्ल में ब्लॉक कमेंटों को डॉक्यूमेंटेशन का हिस्सा माना जाता है और उन्हें प्लेन ओल्ड डॉक्यूमेंटेशन (POD) नाम दिया जाता है। तकनीकी रूप से, पर्ल के पास सोर्स कोड में ब्लॉक कमेंटों को सम्मिलित करने का कोई कन्वेंशन नहीं है, लेकिन POD को नियमित रूप से वर्कअराउंड के रूप में उपयोग किया जाता है।


 * पीएचपी


 * पीएचपी स्टैण्डर्ड C/C++ स्टाइल कमेंटों का समर्थन करता है, लेकिन पर्ल स्टाइल का भी समर्थन करता है।


 * पायथन
 * सोर्स की लाइनो पर कमेंट करने के लिए ट्रिपल-कोट्स का उपयोग, वास्तव में एक कमेंट नहीं बनाता है। एनक्लोसेड टेक्स्ट एक स्ट्रिंग लिट्रल बन जाता है, जिसे पायथन सामान्यतः इग्नोर कर देता है (अतिरिक्त इसके कि जब यह मॉड्यूल, क्लास या फ़ंक्शन के मुख्य भाग में फर्स्ट स्टेटमेंट हो; डॉकस्ट्रिंग देखें)।


 * एलिक्सिर
 * पायथन में उपयोग की गई उपरोक्त ट्रिक एलिक्सिर में भी कार्य करती है, लेकिन यदि कंपाइलर इसे देखता है तो वह एक वार्निंग देगा। वार्निंग को सर्परेस करने के लिए, किसी को ट्रिपल-क्वोटेड स्ट्रिंग में सिगिल  (जो स्ट्रिंग इंटरपोलेशन को रोकता है) को जोड़ने की आवश्यकता होगी, जिससे फाइनल कंस्ट्रक्ट   हो जाएगा। इसके अतिरिक्त, एलिक्सिर एक ऑफिसियल लैंग्वेज सुविधा के रूप में ब्लॉक कमेंटों के सीमित रूप का समर्थन करता है, लेकिन पर्ल की तरह, यह कंस्ट्रक्ट पूर्णतया से दस्तावेज़ लिखने के लिए है। पर्ल के विपरीत, इसे वर्कअराउंड के रूप में उपयोग नहीं किया जा सकता है, यह कोड के कुछ भागों तक ही सीमित है और एररो को फेंकता है या यहां तक ​​कि अन्यत्र उपयोग किए जाने पर फ़ंक्शन को भी दबा देता है।
 * राकु
 * ब्लॉक कमेंटों को दर्शाने के लिए राकू  का उपयोग करता है। राकू वास्तव में,   (अर्थात। ,  ,  ,   के बाद किसी भी "दाएं" और "बाएं" पैरेड ब्रैकेट के उपयोग की अनुमति देता है और उससे भी अधिक जटिल   सभी वैलिड ब्लॉक कमेंट हैं)। ब्रैकेट को कमेंटों के भीतर नेस्ट करने की भी अनुमति है (अर्थात   लास्ट क्लोजिंग ब्रेस पर जाता है)।


 * रूबी
 * रूबी में ब्लॉक कमेंट  लाइन पर ओपन और   लाइन पर क्लोज हो जाती है।


 * एस-लैंग
 * और  डिलिमिटर द्वारा एनक्लोसेड लाइनो के क्षेत्र को इंटरप्रेटर द्वारा इग्नोर कर दिया जाता है। टैग नेम अल्फ़ान्यूमेरिक करैक्टरो का कोई भी अनुक्रम हो सकता है जिसका उपयोग यह इंगित करने के लिए किया जा सकता है कि एनक्लोसेड ब्लॉक को कैसे समझा जाना है। उदाहरण के लिए,   लाटेक्स फॉर्मटेड डॉक्यूमेंटेशन के एक ब्लॉक के प्रारम्भ का संकेत दे सकता है।


 * स्कीम और रैकेट
 * नेक्स्ट कम्पलीट सिंटैक्टिक कॉम्पोनेन्ट (एस-एक्सप्रेशन) पर  के साथ कमेंट की जा सकती है।

एबीएपी दो अलग-अलग प्रकार की कमेंटों का समर्थन करता है। यदि इंडेंटेशन सहित किसी लाइन का फर्स्ट करैक्टर एस्टरिस्क है, तो होल लाइन को एक कमेंट के रूप में माना जाता है, जबकि एक सिंगल डबल कोट्स  एक इन-लाइन कमेंट प्रारंभ करता है जो लाइन के अंत तक कार्य करता है। एबीएपी   और   स्टेटमेंटो के मध्य कमेंट संभव नहीं हैं क्योंकि नेटिव एसक्यूएल में इन करैक्टरो के लिए अन्य उपयोग हैं। अधिकांश एसक्यूएल डाइअलेक्ट में इसके बजाय डबल डैश  का उपयोग किया जा सकता है।
 * एबीएपी


 * एसोटेरिक लैंग्वेज
 * कई एसोटेरिक प्रोग्रामिंग लैंग्वेज इस कन्वेंशन का पालन करती हैं कि कोई भी टेक्स्ट जो इंस्ट्रक्शन पॉइंटर (उदाहरण के लिए, बेफंज) द्वारा निष्पादित नहीं किया जाता है या अन्यथा कोई अर्थ नहीं दिया जाता है (उदाहरण के लिए, ब्रेनफक), को एक कमेंट माना जाता है।

कमेंट कम्पैरिसन
सोर्स कोड में कमेंट घोषित करने के लिए सिंटेक्स शैलियों की एक विस्तृत विविधता है। ब्लॉक कमेंट स्टाइल को इंगित करने के लिए यहां इटैलिक में  का उपयोग किया गया है। इनलाइन कमेंट स्टाइल को इंगित करने के लिए यहां इटैलिक   का उपयोग किया गया है।

यह भी देखें

 * सी सिंटैक्स
 * सी++ सिंटैक्स
 * कर्ली ब्रैकेट प्रोग्रामिंग लैंग्वेज, प्रोग्रामिंग लैंग्वेज सिंटैक्स का एक विस्तृत वर्ग
 * जावा सिंटैक्स
 * जावास्क्रिप्ट सिंटैक्स
 * पीएचपी सिंटैक्स और सेमेन्टिक्स
 * पायथन सिंटैक्स और सेमेन्टिक्स

कमेंट
[Category:Programming लैंग्वेज comparisons|*Synt