Carbon, η γλώσσα προγραμματισμού που στοχεύει να αντικαταστήσει τη C++

πριν ΛΙΓΕΣ μερες αποκάλυψε ένας υπάλληλος της Google που αναπτύσσει μια νέα γλώσσα προγραμματισμού που ονομάζεται "Κάρβουνο", ότι τοποθετείται ως πειραματική αντικατάσταση της C++, επεκτείνοντας αυτή τη γλώσσα και εξαλείφοντας τις υπάρχουσες ελλείψεις.

Σύμφωνα με την παρουσίαση του Carruth, η γλώσσα αναπτύχθηκε για να μπορεί να δημιουργεί λογισμικό όπου η απόδοση είναι κρίσιμη. Ήθελαν επίσης να επιτρέψουν στους προγραμματιστές να επωφεληθούν από το σχεδιασμό της σύγχρονης γλώσσας προγραμματισμού χρησιμοποιώντας το Carbon.

Μερικά από τα πράγματα που ξεχώρισαν ως κύρια σημεία του άνθρακα σε σύγκριση με τη C++ ήταν, για παράδειγμα, απλούστερη σύνταξη και εισαγωγές API. Σύμφωνα με τον Carruth, αυτή η νέα πειραματική γλώσσα θα πρέπει να είναι αμφίδρομα διαλειτουργική με τη C++, πράγμα που σημαίνει ότι τα έργα θα πρέπει να μπορούν να μεταναστεύουν από τη μια γλώσσα στην άλλη χωρίς μεγάλη δυσκολία.

Επιπλέον, στόχος είναι η περαιτέρω ανάπτυξη της γλώσσας σε ανοιχτή μορφή στο Διαδίκτυο, όπου όποιος θέλει μπορεί να συνεισφέρει τον πηγαίο κώδικα. Το έργο είναι δημόσια διαθέσιμο στο Github και είναι ανοιχτό για αιτήματα έλξης. 

Η γλώσσα υποστηρίζει βασική φορητότητα C++, μπορεί να ενσωματωθεί με τον υπάρχοντα κώδικα C++ και παρέχει εργαλεία για την απλοποίηση της μετεγκατάστασης υπαρχόντων έργων μεταφράζοντας αυτόματα τις βιβλιοθήκες C++ σε κώδικα Carbon.

Για παράδειγμα, μπορείτε να ξαναγράψετε μια συγκεκριμένη βιβλιοθήκη στο Carbon και να τη χρησιμοποιήσετε σε ένα υπάρχον έργο C++. Ο μεταγλωττιστής Carbon είναι γραμμένος χρησιμοποιώντας εκδόσεις LLVM και Clang.

Από τα κύρια χαρακτηριστικά του άνθρακα, ξεχωρίζουν τα ακόλουθα:

  • Η απόδοση του κώδικα που προκύπτει είναι συγκρίσιμη με εκείνη της C++, ενώ διατηρεί τη δυνατότητα πρόσβασης σε διευθύνσεις χαμηλού επιπέδου και δεδομένα επιπέδου bit.
  • Φορητότητα με υπάρχοντα κώδικα C++, συμπεριλαμβανομένης της κληρονομικότητας κλάσεων και προτύπων.
  • Γρήγορη μεταγλώττιση και δυνατότητα ενσωμάτωσης με υπάρχοντα συστήματα κατασκευής για C++.
  • Απλοποιήστε τη μετανάστευση μεταξύ διαφορετικών εκδόσεων του Carbon.
  • Παρέχει εργαλεία ασφαλή για τη μνήμη που προστατεύουν από τρωτά σημεία που προκαλούνται από την αντιμετώπιση μιας περιοχής μνήμης μετά την απελευθέρωσή της, την κατάργηση αναφοράς μηδενικών δεικτών και τις υπερχειλίσεις buffer.

Φυσικά, έχουμε τη Rust ως προτεινόμενη εναλλακτική της C και της C++, αλλά αυτή δεν είναι πραγματικά μια γλώσσα επέκτασης, είναι περισσότερο μια ολοκληρωμένη γλώσσα, ας ξεκινήσουμε ξανά. Ο Carbon προσπαθεί να είναι σαν τη Rust ενώ εξακολουθεί να είναι συμβατός με τον κόσμο της C++, Λοιπόν, στη σελίδα του στο Github λέει:

  • Αντιστοίχιση απόδοσης C++ με χρήση LLVM, με πρόσβαση χαμηλού επιπέδου σε bit και διευθύνσεις
  • Συνεργαστείτε με τον υπάρχοντα κώδικα C++, από την κληρονομικότητα έως τα πρότυπα
  • Γρήγορες, επεκτάσιμες εκδόσεις που λειτουργούν με τα υπάρχοντα συστήματα κατασκευής C++

Ο άνθρακας υποστηρίζεται ότι είναι απαραίτητος επειδή η σταδιακή βελτίωση της C++ απλά δεν είναι πλέον δυνατή λόγω των ιστορικών αποσκευών που απλά δεν μπορεί να απαλλαγεί. Προσωπικά, θα πήγαινα παραπέρα και θα πρότεινα ότι οι σταδιακές "βελτιώσεις" στη C++ είναι μέρος του λόγου που είναι τόσο μεγάλη γλώσσα στην πράξη.

«Πάντα υπάρχουν νέες γλώσσες που προσπαθούν να γίνουν οι διάδοχοι της C++. Χαιρετίζω τα πειράματα με γλώσσες προγραμματισμού και στυλ προγραμματισμού, αλλά πραγματικά δεν θέλω να προκαλώ διαμάχες. Είναι εύκολο να επικρίνουμε τις καθιερωμένες γλώσσες (ξέρουμε τα προβλήματά τους), αλλά είναι συνήθως δύσκολο να προσφέρουμε εναλλακτικές λύσεις χωρίς να δημιουργήσουμε εντελώς νέα σύνολα προβλημάτων στους γλωσσικούς κανόνες, τις βιβλιοθήκες και τη διακυβέρνηση. Το Carbon είναι τόσο νέο και υποκαθορισμένο που δεν μπορώ να κάνω ουσιαστικά τεχνικά σχόλια», δήλωσε ο εφευρέτης της C++ Bjarne Stroustrup σε ένα email.

Ενώ το Carbon ξεκίνησε ως εσωτερικό έργο της Google, η ομάδα ανάπτυξης θέλει τελικά να μειώσει τις συνεισφορές από την Google ή οποιαδήποτε άλλη μεμονωμένη εταιρεία σε λιγότερο από 50% μέχρι το τέλος του έτους. Τελικά, θέλουν να παραδώσουν το έργο σε ένα ανεξάρτητο ίδρυμα λογισμικού, όπου η ανάπτυξή του θα πραγματοποιηθεί από εθελοντές.

Τελικά αν ενδιαφέρεστε να μάθετε περισσότερα γι 'αυτό θα πρέπει να γνωρίζετε ότι οι εξελίξεις του έργου διανέμονται υπό την άδεια Apache 2.0 και μπορείτε να τις συμβουλευτείτε Στον ακόλουθο σύνδεσμο.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.