Inlinec – eine neue Methode zur Verwendung von C-Code in Python-Skripten

Projekt inlinec schlägt eine neue Methode der Inline-Integration von C-Code in Python-Skripte vor. C-Funktionen werden direkt in einer Datei zusammen mit Python-Code definiert und heben sich durch den Dekorator „@inlinec“ ab. Das Summary-Skript wird vom Interpreter spython genau so ausgeführt und mit dem in Python bereitgestellten Mechanismus analysiert. der Codecs, der es ermöglicht, einen Parser anzuschließen, um das Skript vor seiner Analyse durch den Interpreter umzuwandeln (in der Regel wird das Modul codecs für eine transparente Umkodierung des Textes verwendet, erlaubt jedoch auch beliebige Transformationen des Inhalts des Skripts).

Der Parser wird als Modul ("from inlinec import inlinec") angeschlossen, das die vorläufige Verarbeitung durchführt und die mit Hilfe der Annotationen @inlinec gekennzeichneten Definitionen von C-Funktionen zur Laufzeit in ctypes-Bindungen übersetzt und den C-Funktionskörper durch den Aufruf dieser Bindungen ersetzt. Nach dieser Umwandlung erhält der Python-Interpreter bereits den korrekt umgewandelten Quelltext des Skripts, in dem C-Funktionen über ctypesaufgerufen werden. Eine ähnliche Methode wird auch im Projekt Pyxl4angewendet, das es erlaubt, HTML- und Python-Code in einer Datei zu mischen.

# coding: inlinec
from inlinec import inlinec

@inlinec
def test():
#include<stdio.h>
void test() {
printf("Hello, world");
}

Die Entwicklung wird derzeit als experimenteller Prototyp präsentiert, in dem solche Mängel wie die fehlende Unterstützung für das Übergeben von Zeigern an Funktionen (außer Strings), die Notwendigkeit, „gcc -E“ für das Preprocessing des Codes auszuführen, das Speichern von Zwischendateien *.so, *.o und *.c im aktuellen Verzeichnis, das Fehlen eines Cache für die umgewandelte Variante und das Ausführen überflüssiger Analysephasen (hohe Verzögerungen bei jedem Start) festgestellt werden.
Für den Raspberry Pi 4 wird die Unterstützung für OpenGL ES 3.1 zertifiziert und ein neuer Vulkan-Treiber entwickelt.

Quelle: opennet.ru

Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster