Python 3.13 bringt neuen Interpreter
Mit Python 3.13 ist die neueste stabile Version der Programmiersprache Python erschienen.
Mit Python 3.13 ist die neueste stabile Version der Programmiersprache Python erschienen.
Nach rund 12 Jahren in der Entwicklung liegt die funktionale Programmiersprache Hy in der Version 1.0.0 vor.
Mike Schilli verfolgt live, wo die Besucher herkommen, die seine Webauftritte abrufen. Statt Google Analytics nutzt er dazu ein simples Terminalprogramm in Go.
Die Programmiersprache Rust gilt als eine sichere Programmiersprache. Aber es gibt Unwägbarkeiten.
Das Unternehmen TIOBE ermittelt regelmäßig die beliebteste Programmiersprache.
Das Rust-Team hat Version 1.78.0 der Programmiersprache angekündigt. Die neue stabile Ausgabe bringt neue Attribute und Verbesserungen mit.
Um gleich eine ganze Klasse von Sicherheitslücken zu vermeiden, sollen künftig Programmiersprachen mit Speichersicherheit benutzt werden.
Das Go-Team hat mit der Veröffentlichung von Go 1.22 mehrere neue Funktionen und Verbesserungen realisiert.
Mit der Unterstützung von Rust im Basissystem von FreeBSD könnten viele Anwendungen auf die sichere Sprache portiert werden.
Das Unternehmen Tiobe misst die Verbreitung von Programmiersprachen. Demnach war Python auch im letzten Jahr erneut die beliebteste Sprache, gefolgt von C, C++ und Java.
Das Programmiersprachenprojekt Julia hat Version 1.10 veröffentlicht, die hauptsächlich Leistungsverbesserungen mitbringt.
Das PHP-Entwicklungsteam hat Version 8.3.0 der Progr
Das Rust-Team hat die Programmiersprache Rust in Version 1.74.0, angekündigt. Die neue Ausgabe bringt diverse Neuerungen und Verbesserungen mit.
Neu ist unter anderem, die Lint-Konfiguration durch den Paketmanager Cargo. Dabei unterstützt das Cargo.toml-Manifest nun eine [lints]-Tabelle, um die Berichtsstufe (forbid, deny, warn, allow) für Lints vom Compiler und anderen Werkzeugen zu konfigurieren.
Für Cargo gibt es noch weitere Funktionen. Die Entwickler nennen hier Credential Provider und authentifizierte private Registries.
Credential Providers ermöglichen die Konfiguration, wie Cargo Berechtigungsnachweise für eine Registrierung erhält. Integrierte Anbieter sind für die betriebssystemspezifische sichere Speicherung von Geheimnissen unter Linux, macOS und Windows enthalten. Darüber hinaus können benutzerdefinierte Anbieter geschrieben werden, um beliebige Methoden zur Speicherung oder Erzeugung von Token zu unterstützen. Die Verwendung eines sicheren Anbieters für Anmeldeinformationen verringert das Risiko, dass Registrierungs-Token verloren gehen.
Private Registries können nun optional eine Authentifizierung für alle Operationen verlangen, nicht nur für die Veröffentlichung. Dies ermöglicht es privaten Cargo-Registries, ein sichereres Hosting von Crates anzubieten. Die Verwendung von privaten Registern erfordert die Konfiguration eines Credential Providers.
Die Ankündigung enthält auch Informationen zur Installation.
Der Beitrag Rust 1.74.0 ist fertig erschien zuerst auf Linux-Magazin.
Die Free Software Foundation Europe (FSFE) hat die Anmeldung für Youth Hacking 4 Freedom 2024, kurz YH4F gestartet. Der Programmierwettbewerb für Jugendliche aus ganz Europa biete Teenagern die Möglichkeit ihr eigenes Projekt zu programmieren, gleich ob allein oder im Team.
Ziel dieses Wettbewerbs sei es, junge technikbegeisterte Menschen aus ganz Europa zusammenzubringen, ganz unabhängig von ihrem aktuellen Kenntnisstand. Alle Teilnehmenden, welche zur Anmeldung zwischen 14 und 18 Jahre alt sein müssen, haben über sechs Monate die Möglichkeit an ihrem eigenen Freien Software-Projekt zu arbeiten.
Die inzwischen dritte Ausgabe des Wettbewerbs startet am 7. Dezember 2023 mit einer Online-Veranstaltung um die Fragen der Teilnehmenden zu beantworten. Die Programmierphase beginne dann im Januar 2024. Nach dem Start der Programmierphase stünden sechs Monate, bis zum 30. Juni 2024, zum Arbeiten am Projekt zur Verfügung. Eine späte Anmeldung sei bis zum Ende möglich, ebenso wie die Änderung der ursprünglichen Projektidee, jedoch bleibe die Deadline beim 30. Juni 2024 bestehen.
Neben der Möglichkeit, neue Freundschaften quer durch Europa hinweg zu schließen locke auch noch ein Preisgeld, teilt die FSFE mit. Mehr als 10.000 Euro würden insgesamt an die sechs Gewinner vergeben, heißt es weiter. Davon gingen 4096 Euro an den ersten Platz, 2048 Euro an den zweiten Platz und 1024 Euro sowohl an den dritten Platz wie auch die Sonderpreise.
Im Juli und August 2024 werde die YH4F Jury, bestehend aus internationalen, technischen Experten, die Projekte begutachten. Die Gewinner würden dann im September 2024 benachrichtigt und offiziell während der Preisverleihung in Brüssel im Oktober 2024 bekannt gegeben.
Der Beitrag FSFE startet Youth Hacking 4 Freedom 2024 erschien zuerst auf Linux-Magazin.
Das Python-Team hat festgelegt, wie die Sprache eine bessere Nebenläufigkeit bekommen soll. Bei zu großen Problemen wird dies aber nie umgesetzt.
Das technische Leitungsgremium der Sprache Python hat wichtige Details zur Umsetzung einer besseren Nebenläufigkeit bekannt gegeben. Konkret handelt es sich dabei um die Annahme und Ausgestaltung der Spracherweiterung PEP 703, die den sogenannten Global Interpreter Lock (GIL) in der Standardimplementierung CPython optional machen möchte. Das so entstehende free-threaded Python könnte aber massive Auswirkungen auf das gesamte Ökosystem haben, sodass die Beteiligten nun eben eine lange Testphase anstreben.
Begonnen werden könnte damit wohl sofort, wie es in der Ankündigung heißt. Die Technik soll dabei durch eine Option beim Kompilieren von CPython selbst aktiviert werden können. Das sollte zwar nirgendwo standardmäßig oder gar produktiv genutzt werden, ermögliche aber Paketbetreuern, die Implementierung zu testen. Eine zweite Testphase soll darüber hinaus erst starten, wenn die Arbeiten an API und ABI sich weitgehend beruhigt haben und der Community-Support für die neue Technik groß genug ist.
Letztlich soll das free-threaded Python der Standard für Sprachen werden und diese dann eben komplett ohne GIL auskommen. Das Team zielt dabei darauf, diesen Übergang so störungsfrei wie möglich zu machen. Anfänglich soll der GIL dabei noch optional verfügbar bleiben. Wenn dieser aber nicht mehr weitläufig genutzt wird, soll die Technik komplett entfernt werden.
Wie das Team selbst schreibt, sind diese Pläne derzeit noch bewusst vage gehalten und erfordern wohl dauerhaft begleitenden Diskussionen der Beteiligten. Einen Zeitplan für die Umsetzung gibt es damit noch nicht und die Verantwortlichen wollen jeden der Schritte einzeln evaluieren, auch um eventuelle Änderungen noch rechtzeitig zurücknehmen zu können. Das Python-Team behält sich dabei auch vor, sämtliche der Arbeiten an einem No-GIL-Python zurückzunehmen, sollte diese nicht die Erfolge bringen, die sich die Beteiligten wünschen.
Der Beitrag Weg für Python ohne Global Interpreter Lock frei erschien zuerst auf Linux-Magazin.
Zwei kostenlose Onlinekurse sind im September auf der Lernplattform openHPI des Hasso-Plattner-Instituts (HPI) im Angebot. Der erste vermittelt ab 6. September spielerisch Grundkenntnisse in der Programmiersprache Python. Der zweite frischt ab 13. September vor einer möglichen Aufnahme eines Informatikstudiums im Wintersemester die notwendigen Mathematik-Kenntnisse auf.
Beim vierwöchigen Onlinekurs “Programmieren lernen mit Python”, führen drei Studentinnen und ein wissenschaftlicher Mitarbeiter in die mit Abstand beliebteste Programmiersprache der Welt ein, berichtet das HPI.
Im dreiwöchigen Online-Vorkurs “Mathematik – Grundlagen für das Informatikstudium” hilft HPI-Wissenschaftler Dr. Timo Kötzing Oberstufen-Schülerinnen und Schülern, in so genannten MINT-Fächern benötigte mathematische Grundlagen wie Differential- und Integralrechnung, Rechnen mit Unbekannten sowie Logarithmen und Exponentiationen aufzufrischen.
Anmeldungen sind möglich unter https://open.hpi.de/courses/pythonjunior2023 (ab Klasse 7) und https://open.hpi.de/courses/mathe2023 (ab Klasse 12).
Der Beitrag HPI bietet Informatik-Kurse für Schüler erschien zuerst auf Linux-Magazin.
Die neue stabile Version 1.72.0 der Programmiersprache Rust beseitigt unter anderem ein Limit bei der Const-Evaluierung.
In früheren Versionen von Rust gab es eine Beschränkung der Evaluierung von Konstanten beim Kompilieren. Das sollte verhindern, dass die Auswertung von benutzerdefinierten Konstanten in eine Endlosschleife gerät oder anderweitig unendlich viel Zeit in Anspruch nimmt, teilen die Entwickler mit. Allerdings habe man festgestellt, dass kreativer Rust-Code an diese Grenzen stoßen und einen Compilerfehler erzeugen könne, heißt es in der Ankündigung. Und es seien auch noch schlimmere Auswirkungen denkbar, weil das Erreichen des Limits je nach den vom Benutzer aufgerufenen Bibliotheken stark variiere. Es könne dann sogar vorkommen, das eine Bibliothek eine Anweisung in zwei Teile aufspalte und damit das Kompilieren von Code unmöglich mache. Dieses Limit entfällt nun.
Jetzt könnten Entwickler eine unbegrenzte Anzahl von Konst-Evaluierungen zur Kompilierzeit durchführen, heißt es weiter. Um lange Kompilierungen ohne Rückmeldung zu vermeiden, werde der Compiler immer eine Meldung ausgeben, nachdem der Code zur Kompilierzeit eine Weile gelaufen sei, und diese Meldung nach einer Zeitspanne wiederholen, die sich dann jedes Mal verdopple.
In der Ankündigung sind weitere Neuerungen aufgeführt und die Downloads verlinkt.
Der Beitrag Rust 1.72.0 bringt unbegrenzte Evaluierungsmöglichkeiten erschien zuerst auf Linux-Magazin.
Mit Govulncheck v1.0.0 hat Google einen Schwachstellenscanner für Go-Projekte veröffentlicht. Über ein API lässt sich der Scan in weitere Tools integrieren.
Angekündigt hatte Google seine Unterstützung für das Schwachstellenmanagement bereits vergangenen September. Das nun veröffentlichte Govulncheck ist ein Kommandozeilentool, das Go-Entwicklern hilft, bekannte Schwachstellen in ihren Projekten zu finden, teilt Google mit. Das Tool könne die Codebasis und Binaries gleichermaßen untersuchen. Es reduziere zudem unnötiges Fals-Positiv-Rauschen, indem es die Schwachstellen in den Funktionen priorisiert, die vom Code tatsächlich aufgerufen werden.
Govulncheck basiert auf der Go Vulnerability Database die Informationen zu bekannten Schwachstellen in Go-Modulen vorhält. Die Einträge dieser Datenbank lassen sich auch durchsuchen.
Die ebenfalls veröffentlichte API liefere dieselbe Funktionalität wie der Befehl „govulncheck“ und ermöglicht es Entwicklern, Sicherheitsscanner und andere Tools mit govulncheck zu integrieren, berichtet Google weiter. Govulncheck lasse sich etwa auch direkt über die Go-Erweiterung für Visual Studio Code verwenden.
Der Beitrag von Google liefert How-tos und Informationen zur Nutzung und Integration von Govulncheck.
Der Beitrag Govulncheck: Google bringt Schwachstellenscanner für Go erschien zuerst auf Linux-Magazin.
Mehr als 1000 Entwickler schreiben inzwischen bei Google Rust-Code. Der Umstieg erfolgt offenbar schneller und einfacher als erwartet.
Das Open-Source-Team von Google hat die Ergebnisse einer Auswertung zur internen Nutzung der Programmiersprache Rust veröffentlicht. Grundlage dafür sind die Antworten von mehr als 1.000 Angestellten, die im vergangenen Jahr 2022 Rust-Code selbst geschrieben oder eingepflegt haben. Dabei räumt das Team auch mit einigen Gerüchten auf, die im Zusammenhang mit dem Wechsel auf Rust immer wieder genannt werden. Dazu gehört auch, dass es lange dauere, Rust zu erlernen. Google widerspricht hier deutlich.
Demnach fühlten sich zwei Drittel der befragten Entwickler schon nach nur maximal zwei Monaten sicher genug, zu einer bestehenden Codebasis in Rust beizutragen. Darüber hinaus heißt es, dass die Hälfte der Befragten nach nur vier Monaten genauso produktiv in Rust arbeiten könne wie in einer anderen Sprache. Laut Google entsprechen diese Zahlen auch dem Zeitraum zum Erlernen anderer Sprachen, sowohl “innerhalb als auch außerhalb von Google.”
Google schreibt: “Insgesamt haben wir keine Daten gesehen, die darauf hindeuten, dass Rust im Vergleich zu anderen Sprachen, die diese Entwickler zuvor bei Google verwendet haben, einen Produktivitätsnachteil mit sich bringt.” Von Vorteil für die Nutzung von Rust sind dabei laut der Auswertung auch die als “besonders hilfreich” bezeichneten Fehlermeldungen. Ebenso sei ein Großteil der Befragten zufrieden mit der eigenen Codequalität in Rust, wobei 85 Prozent der Entwickler davon ausgehen, dass ihr Code in Rust zu einer höheren Rate korrekt ist als in anderen Programmiersprachen.
Die größten Probleme beim Rust-Umstieg seien die als zu langsam beschriebene Geschwindigkeit des Rust-Compilers sowie die Makros, das Ownership-System und die Async-Programmierung. Google zieht aus der Umfrage folgenden Schluss: “Wenn Rust nicht nur besser für das Schreiben von qualitativ hochwertigem Code ist, sondern auch besser dafür geeignet ist, diesen Code schneller einzupflegen, dann ist das für Unternehmen, die die Einführung von Rust evaluieren und in Betracht ziehen, eine ziemlich überzeugende Reihe von Gründen, die über Leistung und Speichersicherheit hinausgehen.”
Der Beitrag Google-Entwickler wechseln schnell auf Rust erschien zuerst auf Linux-Magazin.
Die Programmiersprache Rust hat mit Version 1.70.0 das “sparse”-Protokoll von Cargo nun standardmäßig für das Lesen des Index von crates.io aktiviert, berichten die Entwickler.
Diese Funktion sei zwar bereits mit Rust 1.68.0 stabilisiert worden, bedurfte aber noch Konfigurationsarbeiten um sie mit crates.io verwenden zu können. Nutzer sollten damit von einer deutlich verbesserten Leistung beim Abrufen von Informationen aus dem crates.io-Index profitieren.
Benutzer, die sich hinter einer restriktiven Firewall befinden, müssen sicherstellen, dass der Zugriff auf “https://index.crates.io” möglich ist, heißt es in der Ankündigung. Wer bei der vorherigen Standardeinstellung bleiben will oder muss und den von GitHub gehosteten Git-Index weiter verwende, könne die Konfigurationseinstellung unter “registries.crates-io.protocol” verwenden, um die Standardeinstellung entsprechend zu ändern.
Zudem seien zwei neue Typen wurden für die einmalige Initialisierung gemeinsam genutzter Daten nun stabil, OnceCell und sein thread-sicheres Gegenstück OnceLock. Diese ließen sich überall dort verwendet werden, wo eine sofortige Konstruktion nicht erwünscht und vielleicht auch nicht möglich ist, wie etwa bei nicht-konstanten Daten in globalen Variablen.
Der Beitrag Rust 1.70.0 mit Sparse-Protokoll erschien zuerst auf Linux-Magazin.
Im Bestreben, kritische Software-Infrastruktur vor Speicherfehlern zu schützen, erhalten die Programme Su und Sudo einen Rewrite in der speichersicheren Programmiersprache Rust.
Initiiert wird die Neufassung von Su und Sudo von Prossimo, einer Initiative der Internet Security Research Group, die auch durch die Initiative Let’s Encrypt bekannt ist. Amazon finanziert den Rewrite.
Die Dienstprogramme Sudo und Su stellten eine kritische Privilegiengrenze auf fast allen Open-Source-Betriebssystemen dar und hätten eine lange Geschichte von Speichersicherheitsproblemen, lässt Prossimo wissen.
Sudo sei in den 1980er Jahren entwickelt worden und habe sich im Laufe der Jahrzehnte zu einem unverzichtbaren Werkzeug für die Durchführung von Änderungen bei gleichzeitiger Minimierung des Risikos für ein Betriebssystem entwickelt. Das Problem sei, dass es in C geschrieben und damit mit Speichersicherheitsproblemen behaftet sei.
Sudo und Su entsprächen allen Kriterien, die die Initiative für einen Rewrite definiert hat. Dazu zählen etwa der Verbreitungsgrad und die wichtige Funktion. Es sei wichtig, dass wir unsere kritischste Software schützen, insbesondere vor Sicherheitslücken im Speicher, heißt im Blogbeitrag von Prossimo. Es sei schwer, sich Software vorzustellen, die viel kritischer sei als Sudo und Su. Der Arbeitsplan des Rewrites ist hier einsehbar. Das GitHub-Repository findet sich hier. Bis September 2023 sollen die Arbeiten abgeschlossen sein.
Wie Prossimo berichtet, hat eine kürzlich durchgeführte Studie ergeben, dass 60 bis 70 Prozent der Sicherheitslücken in iOS und macOS auf Speichersicherheitslücken zurückzuführen sind. Microsoft schätzt, dass 70 Prozent aller Sicherheitslücken in seinen Produkten in den letzten zehn Jahren auf Probleme mit der Speichersicherheit zurückzuführen sind. Google schätzt, dass 90 Prozent der Sicherheitslücken in Android auf Speichersicherheitsprobleme zurückzuführen sind. Eine Analyse von 0-Days, die in freier Wildbahn ausgenutzt wurden, ergab, dass es sich bei mehr als 80 Prozent der ausgenutzten Schwachstellen um Sicherheitslücken im Arbeitsspeicher handelt.
Der Beitrag Sudo und Su: Speichersicherer Rewrite in Rust erschien zuerst auf Linux-Magazin.
Die neue Version 1.69 der Programmiersprache Rust kann mit rund 3000 Commits von 500 Beitragenden aufwarten. Entsprechend zahlreich sind die Änderungen und Verbesserungen.
Obwohl die neue Ausgabe von Rust keine neuen Features mitbringt, sind die Entwickler angetan von Version 1.69. Besonders die zahlreiche Beteiligung sei erfreulich. Verbesserungen habe es unter anderem in der automatischen Behebung von Warnungen gegeben. Nachdem bereits in Rust 1.29.0 der Unterbefehl “cargo fix” hinzugefügt worden sei, um einige einfache Compiler-Warnungen automatisch zu beheben, habe es stetige Fortschritte in den automatisch zu behebenden Warnungen gegeben. Die Anzahl der Warnungen, die sich automatisch bereinigen ließen, sei entsprechend stetig gestiegen. Darüber hinaus habe man die Unterstützung für die automatische Behebung einiger einfacher Clippy-Warnungen hinzugefügt. Damit Entwickler von diesen Features auch Gebrauch machen, habe man nun mehr Aufmerksamkeit darauf gelenkt und der Paketmanager Cargo schlage nun vor, cargo fix oder cargo clippy –fix auszuführen, wenn es Warnungen entdecke, die sich automatisch beheben ließen, teilen die Entwickler mit.
Eine Verbesserung der Leistungsfähigkeit beim Kompilieren verspricht die Neuerung, dass Cargo nun standardmäßig die Ausgabe von Debug-Informationen in Build-Skripten vermeidet. Das Changelog zählt weitere Neuerungen in Rust auf.
Der Beitrag Rust 1.69 mit vielen Verbesserungen erschien zuerst auf Linux-Magazin.
Das Freelancer-Portal Workgenius hat den Fachkräftemangel in Deutschland analysiert und nach Städten und Programmiersprachen aufgeschlüsselt. Ein Resultat: Java-Programmierer sind am häufigsten gesucht.
Für die Studie zum Arbeitsmarkt für das Jahr 2023 hat Workgenius nach eigenen Angaben mehr als 120.000 Stellenausschreibungen für IT-Jobs in Deutschland analysiert. Und auch ermittelt welche Programmiersprachen am gefragtesten in Deutschlands Großstädten sind.
Im Ranking bezogen auf die Freien Stellen bezogen auf 100.000 Einwohner liegt Frankfurt auf Rang 1 mit 1582 Stellen je 100.000 Einwohnern. Insgesamt seien 12.089 IT-Stellen ausgeschrieben, heißt es in der Studie von Workgenius. Bei den Programmiersprachen ist Java mit 1397 Ausschreibungen in Frankfurt die gefragteste Programmiersprache. In absoluten Werten bei den Stellenausschreibungen landet Frankfurt hinter Berlin (19.914 Stellen), München (16.605) und Hamburg (13.058) auf Platz vier.
Auf Platz zwei folgt, wie schon im Vorjahr, Stuttgart. Die insgesamt gezählten 9009 Stellen (2022: 5.325) Stellen verteilt auf die knapp 630.000 Einwohner bedeuten 1430 Stellen je 100.000 Einwohner. Auch in Stuttgart ist der Java-Bedarf mit 1207 Ausschreibungen am größten, teilt Workgenius mit.
Platz drei geht nach Düsseldorf. Die 6989 Stellenausschreibungen entsprechen einer Quote von rund 1125 pro 100.000 Einwohner. In Düsseldorf werden derzeit SQL-Experten mit 706 Ausschreibungen am häufigsten gesucht.
Was die häufig gesuchten Programmiersprachen betrifft, wird Java in insgesamt 24.901 Ausschreibungen gesucht, was den ersten Platz des Rankings bedeutet. Auf Platz zwei folgt SQL. Zwar gilt die Structured Query Language nicht als vollwertige Programmiersprache, allerdings lässt sie sich mit anderen Programmiersprachen kombinieren, heißt es in der Analyse. SQL werde bei 21.813 Stellenausschreibungen vorausgesetzt. Auf dem dritten Platz landet Python mit insgesamt 20.023 Stellenausschreibungen. Die drei Plätze sind damit gleich belegt wie in der Analyse des Vorjahres.
Die kompletten Ergebnisse sind online abrufbar.
Der Beitrag Analyse: Java-Entwickler dringend gesucht erschien zuerst auf Linux-Magazin.
Das National Institute of Standards and Technology (NIST) hat die Programmiersprache Rust in die Liste der “Safer Languages” aufgenommen.
Rust verfüge über ein Ownership-Modell, das sowohl Speicher- als auch Threadsicherheit zur Kompilierzeit garantiere, ohne dass ein Garbage Collector erforderlich sei, begründet das NIST seine Wahl. Dieses Modell ermöglicht es den Benutzern, leistungsstarken Code zu schreiben und gleichzeitig viele Fehlerklassen zu eliminieren, heißt es weiter. Und obwohl Rust auch über einen unsicheren Modus verfüge, sei dessen Verwendung explizit, und erlaube nur einen engen Bereich von Aktionen.
Das 1901 gegründete NIST untersteht dem US-Handelsministerium und gilt als eine der ältesten naturwissenschaftlichen Forschungseinrichtungen in den USA. Eine der vielen Initiativen des NIST ist das Projekt Software Assurance Metrics And Tool Evaluation (SAMATE). Dieses Gremium “widmet sich der Verbesserung der Software Assurance durch die Entwicklung von Methoden zur Bewertung von Software-Tools, der Messung der Effektivität von Tools und Techniken sowie der Identifizierung von Lücken in Tools und Methoden”, heißt es auf der NIST-Website.
Die Safer Languages wiederum sind eine Kategorie der SMATE “Klassen von Software-Sicherheitsfunktionen”. Das NIST empfiehlt dort die Verwendung von Programmiersprachen mit eingebauten Sicherheitsfunktionen, die von den Entwicklern aktiv überwacht und unterstützt werden.
Neben Rust sind bei den Safer Languages auch die Programmiersprachen und Sprach-Tools SPARK, Escher C Verifier Language, Fail-Safe C, Safe-Secure C/C++ (SSCC), die CERT Coding Standards und CCured aufgeführt.
Der Beitrag NIST macht Rust zur Safer Language erschien zuerst auf Linux-Magazin.
Eine native Kompilierung von Python soll eine Programmgeschwindigkeit wie bei C und C++ ermöglichen.
Die Programmiersprache Python gilt zwar als vergleichsweise einfach zu erlernen und wird auch deshalb viel verwendet, die Nutzung des Interpreters in der Standardimplementierung hat aber Nachteile bei der Geschwindigkeit. Mit dem Codon-Projekt versucht ein Team des MIT (Massachusetts Institute of Technology) einen nativen Compiler für Python zu erstellen, um die Sprache deutlich zu beschleunigen.
In der Ankündigung des MIT sagt der Hauptautor von Codon zu der Umsetzung: “Der Benutzer schreibt einfach Python, so wie er es gewohnt ist, ohne sich um Datentypen oder Leistung kümmern zu müssen, was wir automatisch erledigen – und das Ergebnis ist, dass sein Code 10 bis 100 Mal schneller läuft als normales Python. Codon wird bereits kommerziell in Bereichen wie quantitative Finanzen, Bioinformatik und Deep Learning eingesetzt.”
Der neue Python-Compiler Codon basiere auf der LLVM-Compiler-Infrastruktur, biete natives Multithreading und die Geschwindigkeit damit erzeugter Programme reiche gar an C oder C++ heran, schreiben die Beteiligten auf Github. Das Multithreading und die Nebenläufigkeit werden in der Standardimplementierung von Python derzeit effektiv vom sogenannten Global Interpreter Lock (GIL) verhindert, der aber entfernt werden soll.
In einem Vortrag beschreibt das Team Codon als “einen domänenerweiterbaren Compiler und DSL-Framework (Domain Specific Language) für leistungsstarke DSLs mit der Syntax und Semantik von Python.” Neu sei dabei vor allem eine Intermediate Representation die Optimierungen und Analysen erleichtere.
Zwar unterstützte Codon fast die gesamte Python-Syntax, ein kompletter Ersatz für die Standardimplementierung sei das Projekt aber nicht, heißt es. So werden einige Python-Module noch nicht unterstützt und die Nutzung einiger dynamischer Funktionen von Python ist schlicht nicht erlaubt, so dass bestehende Programme teils zur Nutzung mit Codon angepasst werden müssen.
Der Beitrag Python-Compiler verspricht 10- bis 100-fache Leistung erschien zuerst auf Linux-Magazin.