மதிப்பிற்குரிய ஆனால் மந்தமான C++ ஐ மாற்றும் முயற்சியில், Google ஆராய்ச்சியாளர்கள் கார்பன் என அழைக்கப்படும் புத்தம் புதிய "பரிசோதனை" திறந்த மூல நிரலாக்க மொழியை அறிமுகப்படுத்தியுள்ளனர்.
கார்பன் C++ க்கு வாரிசு மொழியாக செயல்பட முடியும், இது டெவலப்பர்களுக்கு நினைவக பாதுகாப்பு மற்றும் பொதுவானது போன்ற சமகால வளர்ச்சிக் கருத்துகளை எடுத்துரைக்கும் புதிய மொழிக்கான எளிய தொடக்கப் புள்ளியை வழங்குகிறது.
ஜாவாவில் உள்ள பலவீனங்களை வலுப்படுத்த ஜாவாஸ்கிரிப்ட் மற்றும் கோட்லினை மேம்படுத்த மைக்ரோசாப்ட் டைப்ஸ்கிரிப்டை எவ்வாறு உருவாக்கியது என்பது போலவே இது இருக்கும்.
கூகுள் பல வருடங்களாக பல நிரலாக்க மொழிகளை உருவாக்கியுள்ளது, அவற்றில் சில குறிப்பிடத்தக்க புகழ் மற்றும் முக்கியத்துவத்தைப் பெற்றுள்ளன.
எடுத்துக்காட்டாக, கோலாங் (அல்லது வெறும் கோ) சேவையகங்கள் மற்றும் விநியோகிக்கப்பட்ட அமைப்புகளை உருவாக்குவதற்கு வசதியாக உருவாக்கப்பட்டது மற்றும் பின்னர் பொது மக்களால் ஏற்றுக்கொள்ளப்பட்டது.
தி டார்ட் நிரலாக்க மொழி, ஜாவாஸ்கிரிப்ட் மாற்றாக உருவாக்கப்பட்டது, ஃப்ளட்டர் தொடங்கும் வரை நன்கு அறியப்படவில்லை.
கூகுள் நிறுவனத்தில் பணிபுரியும் சாண்ட்லர் கார்ருத், 19 ஆம் ஆண்டு ஜூலை 2022 ஆம் தேதி டொராண்டோவில் நடந்த சிபிபி நார்த் மாநாட்டில் கார்பன் என்ற புதிய நிரலாக்க மொழிக்கான தனது யோசனையை வழங்கினார். கோனார் ஹோக்ஸ்ட்ரா படி, கலந்து கொண்டு ஸ்லைடுகளை பதிவு செய்தவர்.
காட்சியை அமைப்பதற்காக, தற்காலத்தின் மிகவும் பிரபலமான நிரலாக்க மொழிகள் எவ்வாறு டெவலப்பர்களை விரைவாக உற்பத்தி செய்ய உதவுகின்றன மற்றும் சமகால மொழி வடிவமைப்பிலிருந்து பலனளிக்கின்றன என்பதை காரத் நிரூபித்தார்.
கார்பன் நிரலாக்க மொழியின் அம்சங்கள், கூகுள் கண்டுபிடித்ததன் நோக்கம் மற்றும் பலவற்றை உள்ளடக்கிய பொதுவான அறிமுகத்துடன் ஆரம்பிக்கலாம்.
கார்பன் புரோகிராமிங் மொழி அறிமுகம்
ஜூலை 19, 2022 அன்று, கூகிள் தான் உருவாக்கிய புதிய நிரலாக்க மொழியாக கார்பனை வெளிப்படுத்தியது. இது C++ ஐ சோதனை ரீதியாக மாற்றும் நோக்கம் கொண்டது.
நன்றி பொதுவான அமைப்பு, ஒவ்வொரு இன்ஸ்டண்டிஷனுக்கான குறியீட்டை இருமுறை சரிபார்க்க வேண்டிய அவசியத்தை நீக்குகிறது, கார்பன் நவீன நிரலாக்கக் கருத்துகளின் அடித்தளத்தில் கட்டமைக்கப்படும்.
ஆண்டின் இறுதிக்குள், வடிவமைப்பு அடிப்படை செயல்பாட்டு பதிப்பை (பதிப்பு 0.1) வழங்க திட்டமிட்டுள்ளது.
நினைவக ஒருமைப்பாடு என்பது C++ இல் இல்லாத ஒரு முக்கியமான உறுப்பு. பாதுகாப்பு குறைபாடுகளின் முதன்மை ஆதாரங்களில் ஒன்று நினைவக அணுகல் சிக்கல்கள் ஆகும்.
டைனமிக் வரம்புகள் காசோலைகளின் மேம்பாடு, துவக்கப்படாத நிலைகளின் அதிக கண்காணிப்பு மற்றும் முழுமையான இயல்புநிலை பிழைத்திருத்த உருவாக்க முறை ஆகியவை கார்பன் குழுவின் இலக்குகளாகும். படைப்பாளிகள் காலப்போக்கில் பாதுகாப்பான கார்பன் துணைக்குழுவை உருவாக்க உத்தேசித்துள்ளனர்.
இருப்பினும், புதிய நிரலாக்க மொழியின் சில முக்கிய பண்புகள் பின்வருமாறு:
- வகைகளை பெயரிட, வெளிப்பாடுகளைப் பயன்படுத்தவும்.
- வரையறை சரிபார்ப்புகளுடன் கூடிய வலுவான ஜெனரிக்ஸ்
- வகைகள் குறிப்பாக இடைமுகங்களை செயல்படுத்துகின்றன
- அறிமுக சொற்றொடர்கள் மற்றும் அடிப்படை இலக்கணம்
- சுட்டிகள் தடையற்ற அணுகல் மற்றும் பிறழ்வை அனுமதிக்கின்றன.
- செயல்பாட்டு உள்ளீட்டு அளவுருக்களுக்கான மதிப்புகள் படிக்க மட்டுமே.
- மூலப் பெயர்வெளி என்பது தொகுப்பு ஆகும்.
- APIகளை அவற்றின் தொகுப்புப் பெயர்களைப் பயன்படுத்தி இறக்குமதி செய்யலாம்.
- ஒரு முறை வெளிப்படையான பொருள் அளவுரு மூலம் அறிவிக்கப்படுகிறது.
- வகுப்புகள் இயல்பாகவே இறுதியானவை; ஒரே ஒரு பரம்பரை உள்ளது
கார்பனின் அம்சங்கள்
நவீன மற்றும் வளரும்
- கார்பன் பதிப்புகளுக்கு இடையே மேம்படுத்தல்கள் எளிமையானவை மற்றும் கருவி அடிப்படையிலானவை.
- வலுவான மொழி அடிப்படைகள், குறிப்பாக நீங்கள் C++ ஐப் பயன்படுத்தியிருந்தால், கற்றுக்கொள்வது எளிது
- பாதுகாப்பான அடித்தளங்கள் மற்றும் நினைவக-பாதுகாப்பான துணைக்குழுவிற்கு படிப்படியான அணுகுமுறை
திறந்த மூல சமூகத்தை வரவேற்கிறோம்
- அரவணைப்பாகவும், ஏற்றுக்கொள்ளவும், அழைக்கவும் பாடுபடும் சமூகம்
- அதன் நோக்கங்கள் மற்றும் முன்னுரிமைகள் தனித்துவமான மற்றும் வலுவான நிர்வாகமாகும்
- கம்பைலர், நூலகங்கள், ஆவணங்கள், கருவிகள், தொகுப்பு மேலாண்மை மற்றும் பலவற்றைக் கொண்ட ஆல் இன் ஒன் உத்தி
C++ உடன் விரைவான மற்றும் இணக்கமானது
- உடன் இணைந்து பணியாற்றுங்கள் சி ++ குறியீடு உங்களிடம் ஏற்கனவே உள்ளது, பரம்பரை மற்றும் டெம்ப்ளேட்கள் உட்பட
- LLVM உடன், C++ உடன் ஒப்பிடக்கூடிய செயல்திறன் மற்றும் பிட்கள் மற்றும் முகவரிகளுக்கான குறைந்த-நிலை அணுகல்
- விரைவான மற்றும் அளவிடக்கூடிய மற்றும் ஏற்கனவே உள்ள உங்கள் C++ உருவாக்க அமைப்புகளுடன் இணக்கமான உருவாக்கங்கள்
கூகுள் ஏன் கார்பன் நிரலாக்க மொழியை உருவாக்கியது?
செயல்திறன்-முக்கியமான மென்பொருள் பெரும்பாலும் C++ இல் எழுதப்படுகிறது, இது மகத்தான மற்றும் விரிவடையும் குறியீட்டு தளங்கள் மற்றும் முதலீடுகளைக் கொண்டுள்ளது.
எவ்வாறாயினும், மேலே குறிப்பிட்டுள்ளபடி டெவலப்பர்களின் கோரிக்கைகளை முன்னெடுத்துச் செல்வதிலும், பூர்த்தி செய்வதிலும் சிக்கல் உள்ளது, பெரும்பாலும் பல வருட மதிப்புள்ள தொழில்நுட்பக் கடனைக் குவிப்பதால்.
தொழில்நுட்பக் கடன் மற்றும் அதன் பரிணாமச் செயல்பாட்டில் உள்ள சிக்கல்கள் காரணமாக C++ ஐ அதிகரிக்கும்படி மேம்படுத்துவது மிகவும் கடினம்.
இந்தச் சிக்கல்களைத் தீர்ப்பதற்கான சிறந்த அணுகுமுறையானது, C அல்லது C++ இன் பாரம்பரியத்தை நேரடியாகப் பெறுவதற்குப் பதிலாக, சமகால ஜெனரிக்ஸ் அமைப்பு, மட்டு குறியீடு அமைப்பு மற்றும் நிலையான, நேரடியான தொடரியல் போன்ற வலுவான மொழி அடித்தளத்துடன் தொடங்குவதாகும்.
Go, Swift, Kotlin, Rust மற்றும் பல சமகால மொழிகள் ஏற்கனவே சிறந்த வளர்ச்சி அனுபவத்தை வழங்குகின்றன. இந்த தற்போதைய மொழிகளில் ஒன்றைப் பயன்படுத்தும் திறன் கொண்ட டெவலப்பர்கள் கட்டாயம்.
துரதிர்ஷ்டவசமாக, C++ இலிருந்து தத்தெடுப்பு மற்றும் இடம்பெயர்வு இந்த மொழிகளின் வடிவமைப்புகளால் கடுமையாக தடைபட்டுள்ளது. இந்த தடைகளில் செயல்திறன் மேல்நிலை மற்றும் மென்பொருளின் idiomatic வடிவமைப்பு மாற்றங்கள் ஆகியவை அடங்கும்.
கார்பன் என்பது C++ ஐ படிப்படியாக மேம்படுத்தும் முயற்சி அல்ல; மாறாக, இது ஒரு வாரிசு மொழி உத்தி. அதன் கவனம் C++ இயங்குதன்மை, அத்துடன் தற்போது C++ பயன்படுத்தும் டெவலப்பர்கள் மற்றும் கோட்பேஸ்களுக்கான பரவலான ஏற்றுக்கொள்ளல் மற்றும் இடம்பெயர்வு.
ஒரு C++ மாற்று மொழியில் இருக்க வேண்டும்:
- C++ உடன் ஒப்பிடக்கூடிய செயல்திறன் டெவலப்பர்களுக்கு ஒரு முக்கியமான பண்பு.
- நிர்வகிக்கக்கூடிய கற்றல் வளைவு மற்றும் C++ புரோகிராமர்களுக்கான பரிச்சய நிலை
- அளவிடக்கூடிய இடம்பெயர்வு மற்றும் சில மூலத்திலிருந்து மூல idiomatic C++ குறியீடு மொழிபெயர்ப்பு அடங்கும்.
- தற்போதைய மென்பொருளின் கட்டமைப்பு மற்றும் வடிவமைப்பிற்கான ஒத்த வெளிப்பாடு மற்றும் ஆதரவு.
- C++ உடனான இயங்குதன்மை தடையற்றது மற்றும் இருதரப்பு ஆகும், இது எந்த நூலகமும் கார்பனைப் பயன்படுத்த அனுமதிக்கிறது.
இந்த மூலோபாயத்தின் மூலம், கூகுள் ஏற்கனவே C++ க்காக இருக்கும் சுற்றுச்சூழல் அமைப்பில் சேர்க்கிறது மற்றும் தற்போதைய முதலீடுகள், குறியீட்டு தளங்கள் மற்றும் மேம்பாட்டு சமூகங்களை ஒருங்கிணைக்கிறது.
ஒரு சில மொழிகள் பல்வேறு சுற்றுச்சூழல் அமைப்புகளுக்கு இந்த அணுகுமுறையை ஏற்றுக்கொண்டன, மேலும் கார்பன் இந்த சூழ்நிலைகளில் C++ க்கு ஒத்த செயல்பாட்டைச் செய்ய முயல்கிறது:
- ஜாவா - கோட்லின்
- ஜாவாஸ்கிரிப்ட் - டைப்ஸ்கிரிப்ட்
- C++ – கார்பன்
C++ VS கார்பன் குறியீடு
நீங்கள் ஏற்கனவே C++ டெவலப்பராக இருந்தால், கார்பன் குறைந்த கற்றல் வளைவைக் கொண்டிருக்க வேண்டும். இது ஒரு நிலையான இலக்கண கட்டுமானங்களால் ஆனது, அவை இயற்கையாக ஒலிக்க வேண்டும் மற்றும் படிக்கவும் புரிந்துகொள்ளவும் எளிமையாக இருக்க வேண்டும்.
C++ குறியீட்டின் எடுத்துக்காட்டு:
இந்த கார்பன் குறியீடு இதற்கு ஒத்திருக்கிறது:
கார்பன் Vs ரஸ்ட்
நினைவக-பாதுகாப்பான செயல்திறன் பயன்பாடுகளின் தேவைகளைப் பூர்த்தி செய்ய வெளிப்படையாக வடிவமைக்கப்பட்ட மற்றொரு சமகால மொழி ரஸ்ட் என்று அழைக்கப்படுகிறது.
ஏன் வெறுமனே ரஸ்ட் பயன்படுத்த கூடாது?
ரஸ்ட், மொஸில்லா திட்டமாகத் தொடங்கி, பின்னர் கணிசமான பொதுப் பின்தொடரலைப் பெற்றுள்ளது என்று சிலர் வாதிடுகையில், C++ க்கு அடுத்தபடியாக, கார்ருத் இந்த இணை இன்னும் செல்லுபடியாகுமா என்று சந்தேகிக்கிறார்.
ரஸ்ட் சந்தேகத்திற்கு இடமின்றி ஒரு புதிய திட்டத்தை தொடங்குவதற்கான ஒரு அற்புதமான மொழியாகும், ஆனால் ஜாவா & கோட்லின் போன்ற மொழிகளின் "இருதரப்பு இயங்குதன்மை" இல்லாததால், படிப்படியாக அதற்கு மாறுவது சவாலானது.
காரத் CPP வடக்கில் ஒரு விரிவுரையை வழங்கினார் மற்றும் ஏற்கனவே ரஸ்ட்டைப் பயன்படுத்திக் கொண்டிருந்தவர்களை தொடர்ந்து செய்ய ஊக்குவித்தார். ரஸ்டுக்கு மாற்றுவதற்கு சவாலான C++ குறியீட்டுத் தளங்களை ஏற்கனவே உள்ள டெவலப்பர்கள் கார்பனைப் பயன்படுத்த வேண்டும்.
குறிப்பாக, கார்பன் என்பது "வாரிசு மொழி" என்று குறிப்பிடப்படுகிறது, இது ஏற்கனவே உள்ள சுற்றுச்சூழல் அமைப்பின் மேல் கட்டமைக்கப்பட்டுள்ளது, இந்த நிகழ்வில் C++.
அந்த நோக்கத்திற்காக, "செயல்திறன்-முக்கியமான பயன்பாடுகளை" உருவாக்குவதில் புரோகிராமர்களுக்கு உதவுவது போன்ற ரஸ்டுடன் பல நோக்கங்களைக் கொண்டிருந்தாலும், கார்பன் தற்போதைய சி++ குறியீட்டுடன் முற்றிலும் இணக்கமாக இருக்க வேண்டும்.
கூடுதலாக, C++ இலிருந்து கார்பனுக்கு நகர்வதை முடிந்தவரை எளிமையாக்கும் நோக்கம் கொண்டது.
தீர்மானம்
இறுதியாக, கார்பன் மொழி படைப்பாளிகள் உருவாக்கும் செயல்பாட்டில் கவனம் செலுத்த முயற்சி செய்தனர். திட்டத்தின் குறியீடு கோரிக்கைக்காகக் கிடைக்கிறது மற்றும் வெளிப்படையாகச் சேமிக்கப்படுகிறது கிட்ஹப், மற்றும் அதன் கலாச்சாரம் உள்ளடக்கியது மற்றும் தனியார் குடிமக்கள் மற்றும் IT துறை ஆகிய இரண்டிற்கும் திறந்ததாக வரையறுக்கப்படுகிறது.
கார்பன் குழுவானது, கார்பன் சமூகத்தால் இயக்கப்படும் ஒரு தன்னாட்சி திட்டமாக இருக்க வேண்டும் என்றும், எதிர்காலத்தில் வளர்ச்சியடைய கூகுளால் தூண்டப்பட்ட திட்டமாக மட்டும் இருக்க வேண்டும் என்றும் நினைத்தது.
பல IT வணிகங்களின் ஆர்வம் இருந்தபோதிலும், இந்த கருத்து இன்னும் சோதனை நிலையில் உள்ளது என்று Caruth மேலும் கூறினார்.
ஒரு பதில் விடவும்