1. Foren
  2. Kommentare
  3. OpenSource-Forum
  4. Alle Kommentare zum Artikel
  5. › GNU Coreutils: Es gibt einen…

das muss so heftig sein

  1. Thema

Neues Thema


  1. das muss so heftig sein

    Autor: thuering86 13.02.23 - 16:01

    Du hast da viele verschiedene Anwendungen in C, jahrzehntealt, mit über zweihunderttausend lines of code und schreibst das alles neu in Rust, vermutlich auch mit OOP.

    Oder macht man das (halb-)automatisiert?

  2. Re: das muss so heftig sein

    Autor: Boereck 13.02.23 - 18:18

    Rust ist keine OOP Sprache. Es gibt Structs und Traits (Interfaces). Du kannst Traits für Structs implementieren. Structs können nicht voneinander Erben. Bei Traits kannst du default Implementierungen für Funktionen angeben, die durch Implementierungen für Structs durch spezialisierte Versionen ausgetauscht/überschrieben werden können. Und du kannst angeben, dass wenn ein Trait implementiert wird, auch andere implementiert werden müssen, was einer Vererbung zumindest ähnlich ist. Im Allgemeinen geht Rust mit dem Trend, dass Komposition der Vererbung vorzuziehen ist. Klassische OOP Programmierung ist das also nicht.

    Die Implementierung ist "clean room" basierend auf der CLI Doku und Test Suite der GNU Coreutils (hier ist die Test Coverage: https://uutils.github.io/user/test_coverage.html). Den GNU Coreutils Code könnten sie auch nicht als Grundlage nehmen, da der GPLv3 lizenziert ist und die uutils unter der MIT Lizenz.

    Grundsätzlich wäre es schon möglich C Quelltext mit C2Rust ( https://c2rust.com/ ) nach unsafe Rust zu übersetzen und dann nach und nach zu safe Rust zu refactoren. Ob das so viel Spaß macht ist eine andere Frage, der resultierende Quelltext wäre erst einmal sehr un-idiomatischer Rust Code.

  1. Thema

Neues Thema


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. Data Analyst (m/w/d)
    STABILA Messgeräte Gustav Ullrich GmbH, Annweiler am Trifels
  2. IT Security Engineer (m/w/d)
    Hannover Rück SE, Hannover
  3. Sachbearbeiterin / Sachbearbeiter (w/m/d) im Bereich Datenschutz SAP HCM
    Informationstechnikzentrum Bund (ITZBund), Bonn, Berlin
  4. Softwareentwickler (m/w/d)
    TAIFUN Software GmbH, Hannover

Detailsuche


Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Hardware-Angebote


Haben wir etwas übersehen?

E-Mail an news@golem.de