कार्बन, प्रोग्रामिंग भाषा जी C++ बदलण्याचे उद्दिष्ट ठेवते

काही दिवसांपूर्वी गुगलच्या एका कर्मचाऱ्याने खुलासा केला कोण नावाची नवीन प्रोग्रामिंग भाषा विकसित करत आहे "कोळसा", que C++ साठी प्रायोगिक बदल म्हणून स्थान दिले आहे, या भाषेचा विस्तार करणे आणि विद्यमान कमतरता दूर करणे.

कॅरुथच्या सादरीकरणानुसार, कार्यप्रदर्शन गंभीर आहे अशा सॉफ्टवेअर तयार करण्यास सक्षम होण्यासाठी भाषा विकसित केली गेली. त्यांना कार्बन वापरून विकासकांना आधुनिक प्रोग्रामिंग भाषा डिझाइनचा लाभ घेण्याची परवानगी द्यायची होती.

C++ च्या तुलनेत कार्बनचे हायलाइट्स म्हणून हायलाइट केलेल्या काही गोष्टी होत्या, उदाहरणार्थ, सोपे वाक्यरचना आणि API आयात. कॅरुथच्या मते, ही नवीन प्रायोगिक भाषा C++ सह द्विदिशात्मकपणे परस्पर व्यवहार करण्यायोग्य असावी, याचा अर्थ प्रकल्प एका भाषेतून दुसर्‍या भाषेत कोणत्याही अडचणीशिवाय स्थलांतरित होऊ शकतील.

याव्यतिरिक्त, इंटरनेटवर मुक्त मार्गाने भाषा विकसित करणे हे एक उद्दिष्ट आहे, जेथे कोणीही स्त्रोत कोडचे योगदान देऊ शकेल. प्रकल्प Github वर सार्वजनिकपणे उपलब्ध आहे आणि साठी खुले आहे विनंत्या ओढा. 

भाषा मूलभूत C++ पोर्टेबिलिटीला समर्थन देते, विद्यमान C++ कोडसह समाकलित करू शकते आणि C++ लायब्ररी स्वयंचलितपणे कार्बन कोडमध्ये अनुवादित करून विद्यमान प्रकल्पांचे स्थलांतर सुलभ करण्यासाठी साधने प्रदान करते.

उदाहरणार्थ, तुम्ही कार्बनमध्ये विशिष्ट लायब्ररी पुन्हा लिहू शकता आणि विद्यमान C++ प्रोजेक्टमध्ये वापरू शकता. कार्बन कंपाइलर LLVM आणि क्लॅंग बिल्ड्स वापरून लिहिला जातो.

कार्बनच्या मुख्य वैशिष्ट्यांपैकी, खाली उभे रहा:

  • निम्न-स्तरीय पत्ते आणि बिट-स्तरीय डेटामध्ये प्रवेश करण्याची क्षमता राखून, परिणामी कोडचे कार्यप्रदर्शन C++ शी तुलना करता येते.
  • विद्यमान C++ कोडसह पोर्टेबिलिटी, क्लास इनहेरिटन्स आणि टेम्पलेट्ससह.
  • जलद संकलन आणि C++ साठी विद्यमान बिल्ड सिस्टमसह समाकलित करण्याची क्षमता.
  • कार्बनच्या विविध आवृत्त्यांमधील स्थलांतर सुलभ करा.
  • मेमरी-सुरक्षित साधने प्रदान करते जी मेमरी एरिया मोकळी केल्यानंतर संबोधित केल्यामुळे उद्भवणाऱ्या असुरक्षिततेपासून संरक्षण करते, नल पॉइंटर्स आणि बफर ओव्हरफ्लो.

अर्थातच आमच्याकडे C आणि C++ साठी प्रस्तावित पर्याय म्हणून Rust आहे, परंतु ही खरोखर विस्तारित भाषा नाही, ती पूर्ण भाषा आहे, चला पुन्हा सुरू करूया. कार्बन अजूनही C++ च्या जगाशी सुसंगत असताना रस्टसारखे होण्याचा प्रयत्न करत आहे, बरं, त्याच्या गिथब पृष्ठावर ते म्हणतात:

  • LLVM वापरून C++ कार्यप्रदर्शन जुळणे, बिट आणि पत्त्यांमध्ये निम्न-स्तरीय प्रवेशासह
  • तुमच्या विद्यमान C++ कोडसह वारसा ते टेम्पलेट्सपर्यंत इंटरऑपरेट करा
  • जलद, स्केलेबल बिल्ड जे तुमच्या विद्यमान C++ बिल्ड सिस्टमसह कार्य करतात

कार्बन आवश्यक असल्याचा दावा केला जातो कारण C++ ची वाढीव सुधारणा आता केवळ ऐतिहासिक सामानामुळे शक्य नाही ज्यापासून ते सुटू शकत नाही. व्यक्तिशः, मी पुढे जाऊन सुचवेन की C++ मधील वाढीव "सुधारणा" ही व्यवहारात इतकी मोठी भाषा असण्याचे कारण आहे.

“नेहमीच नवीन भाषा C++ चे उत्तराधिकारी बनण्याचा प्रयत्न करत असतात. मी प्रोग्रामिंग भाषा आणि प्रोग्रामिंग शैलींसह प्रयोगांचे स्वागत करतो, परंतु मला खरोखर वाद घालायचा नाही. प्रस्थापित भाषांवर टीका करणे सोपे आहे (आम्हाला त्यांच्या समस्या माहित आहेत), परंतु भाषेचे नियम, ग्रंथालये आणि शासनामध्ये पूर्णपणे नवीन समस्या निर्माण केल्याशिवाय पर्याय देणे कठीण आहे. कार्बन इतका नवीन आणि अधोरेखित आहे की मी खरोखर कोणत्याही अर्थपूर्ण तांत्रिक टिप्पण्या करू शकत नाही,” C++ शोधक Bjarne Stroustrup ईमेलमध्ये म्हणाले.

कार्बन एक अंतर्गत Google प्रकल्प म्हणून सुरू झाला असताना, विकास कार्यसंघ शेवटी Google किंवा इतर कोणत्याही वैयक्तिक कंपनीचे योगदान वर्षाच्या अखेरीस 50% पेक्षा कमी करू इच्छित आहे. शेवटी, त्यांना हा प्रकल्प एका स्वतंत्र सॉफ्टवेअर फाउंडेशनकडे सोपवायचा आहे, जिथे त्याचा विकास स्वयंसेवकांद्वारे केला जाईल.

शेवटी आपल्याला त्याबद्दल अधिक जाणून घेण्यात स्वारस्य असल्यास तुम्हाला माहित असले पाहिजे की प्रकल्पाच्या घडामोडी अपाचे 2.0 परवान्याअंतर्गत वितरित केल्या आहेत आणि तुम्ही त्यांचा सल्ला घेऊ शकता. पुढील लिंकवर


टिप्पणी करणारे सर्वप्रथम व्हा

आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.