मैं आप के लिए देख रहा हूँ भाषा नहीं हूँ से प्रेरित !
चुनौती
दो अलग-अलग प्रोग्रामिंग भाषाएं चुनें, और एक प्रोग्राम लिखें जो निम्नलिखित पंक्ति को स्टडआउट (या समकक्ष) में प्रिंट करता है:
This program errors out in <the current language> :P
और फिर प्रत्येक दो भाषाओं में विभिन्न प्रकार की त्रुटि उत्पन्न करता है।
नियम
कुछ नियम मूल चुनौती से लिए गए हैं।
- आउटपुट में, भाषा के नामों का बिल्कुल पालन करना चाहिए:
- नाम पर सूचीबद्ध TIO , वैकल्पिक संस्करण संख्या और / या कार्यान्वयन नाम को छोड़कर (जैसे अगर आप का उपयोग
JavaScript (Node.js)
अपने भाषाओं में से एक के रूप में, आप उपयोग कर सकते हैंJavaScript
अपनी भाषा नाम के लिए, लेकिन नहींJS
याJavascript
।) - आधिकारिक वेबसाइट पर पूरा नाम (या GitHub रेपो) यदि आपकी पसंद की भाषा TIO पर उपलब्ध नहीं है।
- नाम पर सूचीबद्ध TIO , वैकल्पिक संस्करण संख्या और / या कार्यान्वयन नाम को छोड़कर (जैसे अगर आप का उपयोग
- न तो प्रोग्राम को उपयोगकर्ता से कोई इनपुट लेना चाहिए।
- आप किसी भी भाषा में टिप्पणियों का उपयोग कर सकते हैं।
- एक ही भाषा के दो अलग-अलग संस्करण अलग-अलग भाषाओं में गिने जाते हैं।
- यदि यह किया जाता है, तो कार्यक्रम को प्रमुख संस्करण संख्या का उत्पादन करना चाहिए, और यदि दो अलग-अलग लघु संस्करणों पर चल रहा है, तो लघु संस्करण को भी रिपोर्ट करना चाहिए।
- आपको पूर्वनिर्मित संस्करण फ़ंक्शंस का उपयोग नहीं करना चाहिए (इसमें वे चर शामिल हैं जिनका पहले से ही रनटाइम पर मूल्यांकन किया गया है)।
- एक ही भाषा में दो अलग-अलग कमांड लाइन के झंडे भी इस मेटा सर्वसम्मति के अनुसार अलग-अलग भाषाओं में गिने जाते हैं , जब तक कि झंडे में कोड के टुकड़े (जैसे
-Dblahblah...
C) शामिल न हों।- यदि ऐसा किया जाता है, तो प्रोग्राम को उपयोग किए गए झंडे का भी उत्पादन करना चाहिए।
- जब तक दोनों त्रुटियों को एक ही शब्दार्थ (जैसे "शून्य से विभाजन", "विभाजन दोष", या "सीमा से बाहर सूचकांक") उत्पन्न नहीं किया जाता है, तब तक दो त्रुटियों को अलग-अलग माना जाता है।
- यदि किसी भाषा का रनटाइम एक त्रुटि के बाद बाहर नहीं निकलता है, लेकिन उपयोगकर्ता को किसी तरह से त्रुटि रिपोर्ट करता है, तो यह एक वैध त्रुटि है।
- यदि कोई भाषा त्रुटि संदेशों में भेदभाव नहीं करती है, लेकिन कारणों की एक ज्ञात सूची है जो त्रुटि का कारण बनती है, तो आपको त्रुटि संदेश नहीं, कारण निर्दिष्ट करना होगा।
एक उदाहरण है><>
, जिसमें केवल एक त्रुटि संदेश हैsomething smells fishy...
, लेकिन esolangs wiki पृष्ठ में त्रुटि कारणों की एक सूची है।
- सिंटैक्स त्रुटि की अनुमति तब तक नहीं दी जाती है जब तक कि यह कॉल
eval()
या समान के द्वारा उत्पन्न न हो । - मैन्युअल रूप से
throw
(जेएस),raise
(पायथन),die
(पर्ल) या इसी तरह की किसी चीज को फेंकने की अनुमति है, लेकिन उन सभी को एक तरह की त्रुटि माना जाता है। - 2 डी या गोल्फलैंग्स में अमान्य कमांड द्वारा त्रुटि की भी अनुमति है (और एक प्रकार की त्रुटि के रूप में माना जाता है)।
उदाहरण
अजगर और रूबी
- पायथन:
This program errors out in Python :P
स्टडआउट के लिए, फिर अपरिभाषित पहचानकर्ता - रूबी:
This program errors out in Ruby :P
stdout करने के लिए, फिर सीमा से बाहर
C89 और C99
- C89: स्टडआउट के
This program errors out in C 89 :P
लिए, फिर शून्य से विभाजन - C99: स्टडआउट के
This program errors out in C 99 :P
लिए, फिर विभाजन दोष
ध्यान दें कि संस्करण संख्या को हमेशा एक स्थान से भाषा के नाम से अलग किया जाना चाहिए ।
पायथन 2.7.9 और पायथन 2.7.10
- पायथन 2.7.9: स्टैडआउट
This program errors out in Python 2.7.9 :P
करने के लिए, फिर eval पर सिंटैक्स त्रुटि - पायथन 2.7.10: स्टडआउट के
This program errors out in Python 2.7.10 :P
लिए, फिर तानाशाही पर महत्वपूर्ण त्रुटि
पर्ल और पर्ल -n
- पर्ल:
This program errors out in Perl :P
स्टडआउट के लिए, फिर अमान्य समय प्रारूप - Perl
-n
:This program errors out in Perl -n :P
stdout करने के लिए, फिर उस फ़ाइल को खोलने का प्रयास करें जो मौजूद नहीं है
जीतने की स्थिति
यह कोड-गोल्फ है , इसलिए बाइट्स में सबसे छोटा कोड जीत जाता है। लेकिन आपको हमेशा एक उत्तर पोस्ट करने के लिए प्रोत्साहित किया जाता है जो बहुत ही कम नहीं होने पर भी मज़ेदार या दिलचस्प हो।
This program errors out in ...
में मिश्रित रिक्त स्थान / स्थान के बजाय मिश्रित स्थान हो सकते हैं?