दर्शकों से किसी ने "C ++ स्टैंडर्ड लाइब्रेरी पैनल" के दौरान CppCon 2016 ( YouTube ) में बात करते हुए एक सवाल पूछा कि नाम के संभावित experimental
उपयोगकर्ताओं को नामस्थान के भीतर कुछ भी उपयोग करने से डराने के लिए:
क्या आप लोग यह मानते हैं कि [ std::experimental
नामस्थान की सामग्री ] उत्पादन तैयार है और क्या यह तर्क दिया जा सकता है, [कि] यह अगले ३ वर्षों के लिए प्रभावी रूप से तैयार है, और हो सकता है कि आपको ३ साल बाद अपना कोड बदलना पड़े, हो सकता है?
माइकल वोंग (SG5 और SG14 की कुर्सी और कंज्यूरिटी टीएस के संपादक) ने इस सवाल को सबसे पहले रखा:
मुझे लगता है कि समिति के भीतर मजबूत सहमति है कि यह व्यावहारिक रूप से तैयार है। जैसा कि मैंने पहले कहा था, ज्यादातर मामलों में 99% हवा में छोड़ दिया जाता है। हम यह सुनिश्चित करना चाहते हैं कि इसका उपयोग करने के लिए आपके लिए कोई बाधा नहीं है। आप समझ सकते हैं कि हम बड़े फीचर्स, फीचर्स के बड़े समूहों को इस तरह के संदर्भ में क्यों रखना चाहते हैं, ताकि यह बाकी की पूरी लाइब्रेरी प्रणाली को परेशान न करे, लेकिन इससे आपको इसका उपयोग करना भी आसान हो जाता है। अब आप अवधारणाओं के लिए एक विशिष्ट ध्वज के साथ जीसीसी को चालू कर सकते हैं, आप जानते हैं, कि वास्तव में आपके लिए इसे खंडित करना आसान बनाता है।
इसके बाद एलिसडेयर मेरेडिथ (LWG की पूर्व अध्यक्ष):
मैं यहाँ विपरीत स्थिति लेने जा रहा हूँ। हर्ब [सटर] में से एक ने WG21 के संयोजक के रूप में कहा, मानक समूह, जब हमने टीएस का रास्ता बंद कर दिया है, उन्होंने यह नहीं सोचा था कि टीएस तब तक सफल होगा जब तक हम कुछ आगे लाने में असफल नहीं होते, क्योंकि यह इसका मतलब है कि हम पर्याप्त प्रायोगिक नहीं हैं, हम उस महत्वाकांक्षी के रूप में पर्याप्त नहीं हैं जो हम टीएस के लिए उपयोग कर रहे हैं। हम वास्तव में यही चाहते हैंexperimental
एक संकेत है कि, हाँ, ये चीजें परिवर्तन के अधीन हैं, हम उस के लिए बाध्य नहीं हैं, और हम चीजों को गलत कर सकते हैं। यह उन चीजों के लिए हमारी बाधा को कम करने के लिए है जिन्हें हम महत्वाकांक्षी मानते हैं और जितना हम कर सकते हैं, […] अब तीन साल के रिलीज चक्र पर मानक लगता है, हमें वास्तव में प्रायोगिक सुविधाओं को रखने में बहुत अधिक महत्वाकांक्षी होना चाहिए टीएस में, और शायद मुख्य मानक में ही चीजों को अधिक तेजी से आगे बढ़ाना। लेकिन फिर, यह हमारे लिए अगले कुछ [सी ++ मानक समिति] बैठकों में चर्चा करने के लिए एक मजेदार विषय होगा।
Stephan T. Lavavej (माइक्रोसॉफ्ट के एसटीएल कार्यान्वयन के अनुरक्षक) का जवाब देने के लिए अंतिम था:
इंटरफ़ेस की प्रयोगात्मकता और कार्यान्वयन की प्रयोगात्मकता के बीच अंतर करना महत्वपूर्ण है, क्योंकि जब आप "उत्पादन तैयार" कहते हैं, तो इसका क्या मतलब है? आमतौर पर, "प्रोडक्शन रेडी", आपको लगता है कि कार्यान्वयन के बारे में बात करेंगे। यह std::experimental
पूरी तरह से [...] बुलेटप्रूफ होने के लिए [कुछ में ] के कार्यान्वयन के लिए काफी संभव है । [...] कुछ ऐसा [...] <random>
TR1 में हैडर, [यह था] वास्तव में, वास्तव में TR1 में बहुत अच्छा है, और आप उस का एक बिल्कुल बुलेट प्रूफ कार्यान्वयन हो सकता था, लेकिन यह पता चला है कि इंटरफ़ेस मंथन किया काफी हद तक [C ++ 11 और [...] की रिलीज़ से पहले अगर हम वापस जानते थे तो अब हम क्या करते हैं, experimental
लोगों के लिए एक बेहतर संकेत होता है कि, "अरे, शायद आप नहीं चाहते हैं" उपयोगstd::experimental::variate_generator
क्योंकि, हा-हा, यह C ++ 11 में गायब होने वाला है।
इसलिए ऐसा लगता है कि मानक पुस्तकालय डेवलपर्स और समिति के सदस्यों के बीच कुछ इच्छाएं हैं, जो कि भविष्य में कम से कम, std::experimental
नाम स्थान की सामग्री को वास्तव में "प्रायोगिक" होना चाहिए, और इसे इस लिए नहीं लेना चाहिए कि कुछ में std::experimental
होगा इसे C ++ मानक में बनाएं।
और नहीं, जहां तक मैं समझता हूं, यह मानक पुस्तकालय विक्रेताओं पर निर्भर है कि क्या वे विभिन्न सुविधाओं के लिए कार्यान्वयन प्रदान करते हैं std::experimental
।