मुझे जेसन को लिखने वाले सॉफ़्टवेयर के लिए कॉन्फ़िगरेशन फ़ाइलों के प्रारूप के रूप में पसंद है। मुझे लगता है कि यह हल्का, सरल, और व्यापक रूप से समर्थित है। हालांकि, मुझे लगता है कि कुछ चीजें हैं जिन्हें मैं वास्तव में जेसन में पसंद करूंगा कि इसमें नहीं है।JSON विकल्प (कॉन्फ़िगरेशन निर्दिष्ट करने के उद्देश्य से)?
जेसन में मल्टीलाइन तार या यहां दस्तावेज़ (http://en.wikipedia.org/wiki/Here_document) नहीं हैं, और यह अक्सर बहुत अजीब होता है जब आप अपनी जेसन फ़ाइल को मानव-पठनीय और संपादन योग्य होना चाहते हैं। आप तारों के सरणी का उपयोग कर सकते हैं, लेकिन यह एक कट्टरपंथी कामकाज है।
जेसन टिप्पणियों की अनुमति नहीं देता है।
यदि आप यूनिक्स कॉन्फ़िगरेशन फ़ाइलों के स्वरूपों को देखते हैं, तो आप बहुत से लोगों को अपने स्वयं के अजीब प्रारूपों को डिजाइन करने के लिए देखते हैं जो कि किसी प्रकार की सामान्य उद्देश्य वाली चीज़ का उपयोग करने के लिए वास्तव में अधिक समझ में आते हैं। उदाहरण के लिए, यहाँ एक अपाचे config फ़ाइल से कुछ कोड है:
RewriteEngine on
RewriteBase /temp
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml
RewriteCond %{HTTP_ACCEPT} !application/xhtml\+xml\s*;\s*q=0
RewriteCond %{REQUEST_URI} \.html
RewriteCond %{THE_REQUEST} HTTP/1\.1
RewriteRule t\.html t.xhtml [T=application/xhtml+xml]
अनिवार्य रूप से, यहाँ क्या हो रहा है वे एक बूलियन समारोह च लेखन की एक अत्यंत दर्दनाक तरीके का आविष्कार किया है कि है (डब्ल्यू, एक्स, वाई, जेड) = डब्ल्यू &! एक्स & वाई & जेड। आप एक तार्किक "या" चाहते हैं? उनके लिए कुछ अलग (बदसूरत) तंत्र भी मिला है।
ऐसा लगता है कि यह कुछ प्रकार की डेटा विवरण भाषा है जो सरल और ट्यूरिंग-अपूर्ण है, लेकिन अभी भी अधिक अभिव्यक्तिपूर्ण, लचीला और जेसन से सुविधाजनक है। क्या किसी को ऐसी भाषा पता है?
मेरे स्वाद के लिए, एक्सएमएल बहुत जटिल है, और लिस्पी अभिव्यक्तियों में गलत विशेषताएं हैं (ट्यूरिंग-पूर्णता) और सही सुविधाओं (यहां दस्तावेज़, अभिव्यक्तित्मक वाक्यविन्यास) की कमी है।
[संपादित करें] शीर्षक भ्रामक है। मैं जेसन के अगले पुनरावृत्ति में सचमुच दिलचस्पी नहीं रखता हूं। मुझे उन भाषाओं में दिलचस्पी नहीं है जो जावास्क्रिप्ट का उप-समूह हैं। मुझे वैकल्पिक डेटा-विवरण भाषाओं में दिलचस्पी है।
[YAML] (http://en.wikipedia.org/wiki/YAML):
यहाँ उदाहरण टुकड़ा है? – BalusC
@ बालससी: दिलचस्प सुझाव :-) लेकिन वाईएएमएल बुलियन फ़ंक्शन/अपाचे उदाहरण, या इसी तरह के स्वाद के अनुप्रयोगों का कोई अच्छा तरीका नहीं प्रतीत होता है। –