గౌరవనీయమైన కానీ నిదానంగా ఉన్న C++ని భర్తీ చేసే ప్రయత్నంలో, Google పరిశోధకులు కార్బన్గా పిలువబడే సరికొత్త “ప్రయోగాత్మక” ఓపెన్ సోర్స్ ప్రోగ్రామింగ్ లాంగ్వేజ్ని పరిచయం చేశారు.
కార్బన్ C++కి సక్సెసర్ లాంగ్వేజ్గా ఉపయోగపడుతుంది, ఇది డెవలపర్లకు మెమరీ సేఫ్టీ మరియు జెనరిక్స్ వంటి సమకాలీన డెవలప్మెంట్ కాన్సెప్ట్లను సూచించే కొత్త భాషకు సులభమైన ప్రారంభ బిందువును అందిస్తుంది.
జావాలో బలహీనతలను బలోపేతం చేయడానికి జావాస్క్రిప్ట్ మరియు కోట్లిన్లను అప్డేట్ చేయడానికి మైక్రోసాఫ్ట్ టైప్స్క్రిప్ట్ను ఎలా నిర్మించారో అదే విధంగా ఇది ఉంటుంది.
Google సంవత్సరాలుగా అనేక ప్రోగ్రామింగ్ భాషలను అభివృద్ధి చేసింది, వాటిలో కొన్ని ముఖ్యమైన గుర్తింపు మరియు ప్రాముఖ్యతను పొందాయి.
ఉదాహరణకు, గోలాంగ్ (లేదా కేవలం గో) సర్వర్లు మరియు పంపిణీ వ్యవస్థల సృష్టిని సులభతరం చేయడానికి అభివృద్ధి చేయబడింది మరియు తరువాత సాధారణ ప్రజలచే స్వీకరించబడింది.
ది డార్ట్ ప్రోగ్రామింగ్ భాష, ఇది జావాస్క్రిప్ట్ ప్రత్యామ్నాయంగా సృష్టించబడింది, ఫ్లట్టర్ ప్రారంభించే వరకు బాగా ప్రాచుర్యం పొందలేదు.
19 జూలై 2022న టొరంటోలో జరిగిన Cpp నార్త్ కన్వెన్షన్లో Google ఉద్యోగి అయిన చాండ్లర్ కార్రుత్ కార్బన్ అనే కొత్త ప్రోగ్రామింగ్ లాంగ్వేజ్ కోసం తన ఆలోచనను అందించారు. కోనార్ హోయెక్స్ట్రా ప్రకారం, ఎవరు హాజరై స్లయిడ్లను రికార్డ్ చేసారు.
దృష్టాంతాన్ని సెట్ చేయడానికి, డెవలపర్లు వేగంగా ఉత్పాదకతను మరియు సమకాలీన భాష రూపకల్పన నుండి ప్రయోజనం పొందేందుకు వీలు కల్పించే అనేక అత్యంత ప్రసిద్ధ ప్రోగ్రామింగ్ భాషల వారసులు ఉన్నారని కార్రుత్ ప్రదర్శించారు.
కార్బన్ ప్రోగ్రామింగ్ లాంగ్వేజ్ యొక్క సాధారణ పరిచయంతో ప్రారంభిద్దాం, దాని ఫీచర్లు, దాని యొక్క Google యొక్క ఆవిష్కరణ ప్రయోజనం మరియు మరిన్ని ఉన్నాయి.
కార్బన్ ప్రోగ్రామింగ్ లాంగ్వేజ్ పరిచయం
జూలై 19, 2022న, Google తాను సృష్టించిన సరికొత్త ప్రోగ్రామింగ్ భాషగా కార్బన్ను వెల్లడించింది. ఇది C++ని ప్రయోగాత్మకంగా భర్తీ చేయడానికి ఉద్దేశించబడింది.
ఒక ధన్యవాదాలు సాధారణ వ్యవస్థ, ఇది ప్రతి ఇన్స్టాంటియేషన్ కోసం కోడ్ను రెండుసార్లు తనిఖీ చేయవలసిన అవసరాన్ని తొలగిస్తుంది, ఆధునిక ప్రోగ్రామింగ్ కాన్సెప్ట్ల పునాదిపై కార్బన్ నిర్మించబడుతుంది.
సంవత్సరం చివరి నాటికి, డిజైన్ ప్రాథమిక కార్యాచరణ సంస్కరణను (వెర్షన్ 0.1) అందించాలని యోచిస్తోంది.
మెమరీ సమగ్రత అనేది C++ లేని కీలకమైన అంశం. భద్రతా లోపాల యొక్క ప్రాథమిక మూలాలలో ఒకటి మెమరీ యాక్సెస్ సమస్యలు.
డైనమిక్ హద్దుల తనిఖీల అభివృద్ధి, ప్రారంభించబడని రాష్ట్రాల యొక్క ఎక్కువ ట్రాకింగ్ మరియు క్షుణ్ణంగా డిఫాల్ట్ డీబగ్ బిల్డ్ మోడ్ అన్నీ కార్బన్ బృందం యొక్క లక్ష్యాలు. సృష్టికర్తలు కాలక్రమేణా సురక్షితమైన కార్బన్ ఉపసమితిని సృష్టించాలని భావిస్తున్నారు.
అయితే, కొత్త ప్రోగ్రామింగ్ లాంగ్వేజ్ యొక్క కొన్ని కీలకమైన లక్షణాలు క్రిందివి:
- రకాలను పేరు పెట్టడానికి, వ్యక్తీకరణలను ఉపయోగించండి.
- డెఫినిషన్ చెక్లతో బలమైన జెనరిక్స్
- రకాలు ప్రత్యేకంగా ఇంటర్ఫేస్లను నిర్వహిస్తాయి
- పరిచయ పదబంధాలు మరియు ప్రాథమిక వ్యాకరణం
- పాయింటర్లు అనియంత్రిత యాక్సెస్ మరియు మ్యుటేషన్ కోసం అనుమతిస్తాయి.
- ఫంక్షన్ ఇన్పుట్ పారామీటర్ల విలువలు చదవడానికి మాత్రమే.
- రూట్ నేమ్స్పేస్ ప్యాకేజీ.
- APIలను వాటి ప్యాకేజీ పేర్లను ఉపయోగించి దిగుమతి చేసుకోవచ్చు.
- స్పష్టమైన వస్తువు పరామితి ద్వారా ఒక పద్ధతి ప్రకటించబడుతుంది.
- క్లాసులు డిఫాల్ట్గా ఫైనల్; ఒకే ఒక వారసత్వం ఉంది
కార్బన్ యొక్క లక్షణాలు
ఆధునిక మరియు అభివృద్ధి చెందుతున్న
- కార్బన్ సంస్కరణల మధ్య నవీకరణలు సరళమైనవి మరియు సాధనం-ఆధారితమైనవి.
- బలమైన భాష అండర్పిన్నింగ్లు, ప్రత్యేకించి మీరు C++ని ఉపయోగించినట్లయితే మరియు నేర్చుకోవడం సులభం
- సురక్షితమైన పునాదులు మరియు మెమరీ-సురక్షిత ఉపసమితికి దశల వారీ విధానం
ఓపెన్ సోర్స్ కమ్యూనిటీకి స్వాగతం
- హృదయపూర్వకంగా, అంగీకరించే మరియు ఆహ్వానించడానికి కృషి చేసే సంఘం
- దీని లక్ష్యాలు మరియు ప్రాధాన్యతలు విభిన్నమైన మరియు బలమైన పాలన
- కంపైలర్, లైబ్రరీలు, డాక్యుమెంటేషన్, సాధనాలు, ప్యాకేజీ నిర్వహణ మరియు మరిన్నింటితో ఆల్ ఇన్ వన్ వ్యూహం
C++తో త్వరగా మరియు అనుకూలమైనది
- తో పాటు పని చేయండి సి ++ కోడ్ మీరు ఇప్పటికే వారసత్వం మరియు టెంప్లేట్లతో సహా కలిగి ఉన్నారు
- LLVMతో, C++తో పోల్చదగిన పనితీరు మరియు బిట్లు మరియు చిరునామాలకు తక్కువ-స్థాయి యాక్సెస్
- త్వరిత మరియు స్కేలబుల్ మరియు ఇప్పటికే ఉన్న మీ C++ బిల్డ్ సిస్టమ్లకు అనుకూలంగా ఉండే బిల్డ్లు
గూగుల్ కార్బన్ ప్రోగ్రామింగ్ లాంగ్వేజ్ని ఎందుకు రూపొందించింది?
పనితీరు-క్లిష్టమైన సాఫ్ట్వేర్ ఎక్కువగా C++లో వ్రాయబడుతూనే ఉంది, ఇది అపారమైన మరియు విస్తరిస్తున్న కోడ్బేస్లు మరియు పెట్టుబడులను కలిగి ఉంది.
ఏది ఏమైనప్పటికీ, పైన పేర్కొన్న విధంగా డెవలపర్ల డిమాండ్లను అభివృద్ధి చేయడంలో మరియు చేరుకోవడంలో ఇబ్బంది పడుతోంది, చాలా వరకు సంవత్సరాల విలువైన సాంకేతిక రుణాల కారణంగా.
C++ని పెంచడం చాలా కష్టం, ఎందుకంటే అది సంపాదించిన సాంకేతిక రుణం మరియు దాని పరిణామ ప్రక్రియలో ఇబ్బందుల కారణంగా.
C లేదా C++ సంప్రదాయాన్ని నేరుగా పొందకుండా సమకాలీన జెనరిక్స్ సిస్టమ్, మాడ్యులర్ కోడ్ నిర్మాణం మరియు స్థిరమైన, సరళమైన వాక్యనిర్మాణం వంటి బలమైన భాషా పునాదితో ప్రారంభించడం ఈ సమస్యలను పరిష్కరించడానికి ఆదర్శవంతమైన విధానం.
గో, స్విఫ్ట్, కోట్లిన్, రస్ట్ మరియు అనేక ఇతర సమకాలీన భాషలు ఇప్పటికే అత్యుత్తమ అభివృద్ధి అనుభవాన్ని అందిస్తున్నాయి. ఈ ప్రస్తుత భాషల్లో ఒకదానిని ఉపయోగించగల సామర్థ్యం ఉన్న డెవలపర్లు తప్పక.
దురదృష్టవశాత్తూ, C++ నుండి స్వీకరణ మరియు వలసలు ఈ భాషల డిజైన్ల వల్ల తీవ్రంగా దెబ్బతిన్నాయి. ఈ అడ్డంకులలో పనితీరు ఓవర్హెడ్ మరియు సాఫ్ట్వేర్ యొక్క ఇడియోమాటిక్ డిజైన్కు మార్పులు ఉన్నాయి.
కార్బన్ C++ని క్రమంగా మెరుగుపరిచే ప్రయత్నం కాదు; బదులుగా, ఇది వారసుడు భాషా వ్యూహం. దీని దృష్టి C++ ఇంటర్ఆపరేబిలిటీపై ఉంది, అలాగే ప్రస్తుతం C++ని ఉపయోగిస్తున్న డెవలపర్లు మరియు కోడ్బేస్ల కోసం విస్తృతమైన ఆమోదం మరియు మైగ్రేషన్.
C++ భర్తీ భాష తప్పనిసరిగా కలిగి ఉండాలి:
- C++తో పోల్చదగిన పనితీరు డెవలపర్లకు కీలకమైన లక్షణం.
- C++ ప్రోగ్రామర్లకు నిర్వహించదగిన అభ్యాస వక్రత మరియు పరిచయ స్థాయి
- స్కేలబుల్ మైగ్రేషన్ మరియు కొంత సోర్స్-టు-సోర్స్ ఇడియోమాటిక్ C++ కోడ్ అనువాదాన్ని కలిగి ఉంటుంది.
- ప్రస్తుత సాఫ్ట్వేర్ ఆర్కిటెక్చర్ మరియు డిజైన్కి సారూప్య వ్యక్తీకరణ మరియు మద్దతు.
- C++తో ఇంటర్ఆపరేబిలిటీ అతుకులు మరియు ద్వి దిశాత్మకమైనది, మిగిలిన స్టాక్ను పోర్ట్ చేయకుండానే ఏదైనా లైబ్రరీ కార్బన్ను స్వీకరించడానికి అనుమతిస్తుంది.
ఈ వ్యూహంతో, Google C++ కోసం ఇప్పటికే ఉన్న పర్యావరణ వ్యవస్థకు జోడిస్తుంది మరియు ప్రస్తుత పెట్టుబడులు, కోడ్బేస్లు మరియు అభివృద్ధి సంఘాలను కలుపుతుంది.
వివిధ పర్యావరణ వ్యవస్థల కోసం కొన్ని భాషలు ఈ విధానాన్ని అవలంబించాయి మరియు ఈ పరిస్థితుల్లో కార్బన్ C++కి సమానమైన ఫంక్షన్ను ప్లే చేయడానికి ప్రయత్నిస్తుంది:
- జావా - కోట్లిన్
- జావాస్క్రిప్ట్ - టైప్స్క్రిప్ట్
- C++ - కార్బన్
C++ VS కార్బన్ కోడ్
మీరు ఇప్పటికే C++ డెవలపర్ అయితే కార్బన్ తక్కువ లెర్నింగ్ కర్వ్ని కలిగి ఉండాలి. ఇది సహజంగా అనిపించేలా మరియు చదవడానికి మరియు అర్థం చేసుకోవడానికి సరళంగా ఉండాలి.
C++ కోడ్ యొక్క ఉదాహరణ:
ఈ కార్బన్ కోడ్ దీనికి అనుగుణంగా ఉంటుంది:
కార్బన్ Vs రస్ట్
మెమరీ-సురక్షిత పనితీరు అనువర్తనాల అవసరాలను తీర్చడానికి స్పష్టంగా రూపొందించబడిన మరొక సమకాలీన భాషను రస్ట్ అంటారు.
కాబట్టి రస్ట్ను ఎందుకు ఉపయోగించకూడదు?
మొజిల్లా ప్రాజెక్ట్గా ప్రారంభించి, తదనంతరం గణనీయమైన ప్రజానీకాన్ని కలిగి ఉన్న రస్ట్, C++కి వారసుడు అని కొందరు వాదిస్తున్నప్పటికీ, సమాంతరం ఇప్పటికీ చెల్లుబాటులో ఉందా అని కార్రుత్ సందేహించాడు.
రస్ట్ నిస్సందేహంగా ఒక కొత్త ప్రాజెక్ట్ను ప్రారంభించే అద్భుతమైన భాష, కానీ దీనికి జావా & కోట్లిన్ వంటి భాషల "ద్వి దిశాత్మక ఇంటర్ఆపరేబిలిటీ" లేనందున, క్రమంగా దానికి మారడం సవాలుగా ఉంది.
కార్రుత్ CPP నార్త్లో ఉపన్యాసం ఇచ్చాడు మరియు ఇప్పటికే రస్ట్ని ఉపయోగిస్తున్న వ్యక్తులను అలా కొనసాగించమని ప్రోత్సహించాడు. రస్ట్గా మార్చడానికి సవాలుగా ఉన్న C++ కోడ్బేస్లను ఇప్పటికే కలిగి ఉన్న డెవలపర్లు కార్బన్ని ఉపయోగించాలి.
ప్రత్యేకించి, కార్బన్ను కార్రుత్ "వారసుడు భాష"గా పేర్కొన్నాడు, ఇది ఇప్పటికే ఉన్న పర్యావరణ వ్యవస్థ పైన నిర్మించబడింది, ఈ సందర్భంలో C++.
ఆ ప్రయోజనం కోసం, కార్బన్ అనేది "పనితీరు-క్లిష్టమైన అప్లికేషన్లను" రూపొందించడంలో ప్రోగ్రామర్లకు సహాయం చేయడం వంటి అనేక లక్ష్యాలను రస్ట్తో కలిగి ఉన్నప్పటికీ, ప్రస్తుత C++ కోడ్తో పూర్తిగా అనుకూలంగా ఉండేలా ఉద్దేశించబడింది.
అదనంగా, ఇది C++ నుండి కార్బన్కు వెళ్లడాన్ని వీలైనంత సులభతరం చేయడానికి ఉద్దేశించబడింది.
ముగింపు
చివరగా, కార్బన్ భాష సృష్టికర్తలు సృష్టి ప్రక్రియపై శ్రద్ధ చూపే ప్రయత్నం చేశారు. ప్రాజెక్ట్ కోడ్ అభ్యర్థన కోసం అందుబాటులో ఉంది మరియు బహిరంగంగా నిల్వ చేయబడుతుంది Github, మరియు దాని సంస్కృతి ప్రైవేట్ పౌరులు మరియు IT రంగం రెండింటినీ కలుపుకొని మరియు బహిరంగంగా నిర్వచించబడింది.
కార్బన్ బృందం భవిష్యత్తులో అభివృద్ధి చెందాలంటే, కమ్యూనిటీచే నడిచే స్వయంప్రతిపత్త ప్రాజెక్ట్గా ఉండాలని మరియు Google ద్వారా ఆజ్యం పోసిన ప్రాజెక్ట్ మాత్రమే కాదని కార్బన్ బృందం భావించింది.
అనేక IT వ్యాపారాల నుండి ఆసక్తి ఉన్నప్పటికీ, ఈ భావన ఇప్పటికీ ప్రయోగాత్మక దశలోనే ఉందని కరుత్ తెలిపారు.
సమాధానం ఇవ్వూ