Abo
  • IT-Karriere:

Ada und Spark: Mehr Sicherheit durch bessere Programmiersprachen

Viele Sicherheitslücken in Software sind auf Programmierfehler zurückzuführen. Diese Fehler lassen sich aber vermeiden - und zwar unter anderem durch die Wahl einer guten Programmiersprache. Ada und Spark gehören dazu, leider sind sie immer noch wenig bekannt.

Artikel von Johannes Kanig veröffentlicht am
Spark ist eine Teilmenge von Ada.
Spark ist eine Teilmenge von Ada. (Bild: Pixabay)

Es klingt auf den ersten Blick unwahrscheinlich, ist aber wahr: Die Wahl der Programmiersprache hat maßgeblichen Anteil daran, ob Fehler passieren. Gerade bei systemnaher Programmierung wie bei Mozilla und Embedded-Programmierung wie bei Nvidia können Softwarefehler viel Schaden anrichten. Mozilla verwendet für seine neue Rendering-Engine Rust, Nvidia für bestimmte Firmware-Elemente Ada und Spark. Warum haben sie sich für diese Sprachen entschieden statt etwa für Haskell oder Kotlin? Vor allem, weil Rust und Ada anders als die beiden anderen ohne Virtual Machine und Garbage Collector auskommen. Rust haben wir schon in einem früheren Artikel auf Golem.de vorgestellt, jetzt ist Ada dran.

Was sind Ada und Spark?

Inhalt:
  1. Ada und Spark: Mehr Sicherheit durch bessere Programmiersprachen
  2. Ada - numerische Typen
  3. Ada - Representation Clauses
  4. Spark kann automatisch potenzielle Fehler anzeigen

Ada ist eine prozedurale Programmiersprache wie C oder C++, enthält aber auch unverzichtbare Elemente wie Objektorientierung und Generics. Die Syntax orientiert sich eher an Pascal und nicht am C-typischen Stil mit den geschweiften Klammern. Beim Design wurde großer Wert auf die Lesbarkeit und Fehlervermeidung gelegt.

Die erste Version von Ada wurde 1983 standardisiert, im selben Jahr, in dem auch die erste Version von C++ erschien. Die Programmiersprache wurde ursprünglich für das US-Verteidigungsministerium entwickelt, bis heute ist Ada sehr präsent in Industrien wie der Luftfahrt und der Verteidigung. Teure Compiler ohne Open-Source-Alternativen machten eine weitere Verbreitung in den 1980er Jahren schwierig - heutzutage hat aber jeder Zugriff auf GCC, das Ada unterstützt.

Weitere Versionen der Sprache folgten in den Jahren 1995, 2005 und 2012. Die nächste Version soll Ada 2020 heißen und demzufolge nächstes Jahr erscheinen. Spark ist eine Schwestersprache von Ada, die einige Sprachfeatures entfernt, um noch mehr Sicherheit erreichen zu können. Jedes Spark-Programm ist also ein Ada-Programm, aber nicht unbedingt umgekehrt. Allerdings ermöglicht Spark weitreichende statische Analysen und kann zum Teil starke Garantien geben - dazu später mehr.

Die ersten Schritte

Stellenmarkt
  1. über experteer GmbH, München, Erfurt
  2. operational services GmbH & Co. KG, Frankfurt am Main

Der einfachste Weg, einen Eindruck von Ada zu bekommen, ist die Adacore-Learn-Webseite: Auch ohne Installation können Interessierte gleich mit Ada und Spark loslegen. Für eigene Projekte sollten die nötigen freien Werkzeuge für Ada und Spark von der Webseite von Adacore heruntergeladen und installiert werden. In der Entwicklungsumgebung mit dem Namen GNATstudio kann man entweder sein eigenes Programm schreiben ("Create New Project" im ersten Dialog) oder die vielen Beispiele ansehen (im Menu Help -> GNAT -> Examples).

Eines der grundlegendsten Features von Ada sind die numerischen Typen.

Ada - numerische Typen 
  1. 1
  2. 2
  3. 3
  4. 4
  5.  


Anzeige
Hardware-Angebote
  1. (reduzierte Überstände, Restposten & Co.)
  2. 49,70€

demon driver 25. Jun 2019

Von "unabgängiger" kann sich niemand was kaufen, und konsequent dürfte man dann nur noch...

demon driver 24. Jun 2019

Nix

SirFartALot 13. Jun 2019

das mag ja fuer Auftragsprogrammierer oder Freelancer normal zu sein, die...

\pub\bash0r 12. Jun 2019

Wobei ausgerechnet Java (und Applets) eigentlich ein sehr gutes Sicherheitsmodell haben...

kayozz 12. Jun 2019

Ja, C# bzw. .NET hat auch Schwächen. Aber das Argument würde ich so nicht stehen...


Folgen Sie uns
       


Acer Predator Thronos ausprobiert (Ifa 2019)

Acer stellt auf der Ifa den doch auffälligen Gaming-Stuhl Predator Thronos aus. Golem.de setzt sich hinein - und möchte am liebsten nicht mehr aussteigen.

Acer Predator Thronos ausprobiert (Ifa 2019) Video aufrufen
HP Pavilion Gaming 15 im Test: Günstig gut gamen
HP Pavilion Gaming 15 im Test
Günstig gut gamen

Mit dem Pavilion Gaming 15 bietet HP für 1.000 Euro ein Spiele-Notebook an, das für aktuelle Titel genügend 1080p-Leistung hat. Auch Bildschirm und Ports taugen, dafür nervt uns die voreingestellte 30-fps-Akku-Drossel.
Ein Test von Marc Sauter

  1. Gaming-Notebooks Asus ROG mit Core i9 und fixen oder farbstarken Displays

MINT: Werden Frauen überfördert?
MINT
Werden Frauen überfördert?

Es gibt hierzulande einige Förderprogramme, die mehr Frauen für MINT begeistern und in IT-Berufe bringen möchten. Werden Männer dadurch benachteiligt?
Von Valerie Lux

  1. Recruiting Wenn das eigene Wachstum zur Herausforderung wird
  2. Recruiting Alle Einstellungsprozesse sind fehlerhaft
  3. LoL Was ein E-Sport-Trainer können muss

Verkehrssicherheit: Die Lehren aus dem tödlichen SUV-Unfall
Verkehrssicherheit
Die Lehren aus dem tödlichen SUV-Unfall

Soll man tonnenschwere SUV aus den Innenstädten verbannen? Oder sollten technische Systeme schärfer in die Fahrzeugsteuerung eingreifen? Nach einem Unfall mit vier Toten in Berlin mangelt es nicht an radikalen Vorschlägen.
Eine Analyse von Friedhelm Greis

  1. Torc Robotics Daimler-Tochter testet selbstfahrende Lkw
  2. Edag Citybot Wandelbares Auto mit Rucksackmodulen gegen Verkehrsprobleme
  3. Tusimple UPS testet automatisiert fahrende Lkw

    •  /