Inlinec — a new way to use C code in Python scripts

Projektet inlinec en ny metode til inline-integration af C-kode i Python-scripts er blevet foreslået. Funktioner i C defineres direkte i en fil med Python-kode og fremhæves ved hjælp af dekoratoren «@inlinec». Det samlede script køres, som det er, af interpretereren spython og fortolkes ved hjælp af den mekanisme, der leveres i Python. mellem codec'erne., der muliggør tilslutning af en parser til at transformere scriptet, før det bliver fortolket af interpretereren (normalt anvendes codecs-modulet til gennemsigtig omkodning af tekst, men det tillader også vilkårlig transformation af scriptindholdet).

Parseren tilsluttes som et modul («from inlinec import inlinec»), som udfører en indledende behandling og oversætter on-the-fly definitionerne af C-funktionerne, fremhævet ved annoteringerne @inlinec, til ctypes-wrapper og erstatter kroppen af C-funktionen med et kald til disse wrappers. Efter en sådan transformation modtager Python-interpreteren allerede den korrekt transformerede kildekode, hvor C-funktionerne kaldes ved hjælp af ctypes. En lignende metode anvendes også i projektet Pyxl4, som muliggør blanding af HTML og Python-kode i én fil.

# coding: inlinec
from inlinec import inlinec

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

Udviklingen præsenteres stadig som en eksperimentel prototype, hvor der bemærkes mangler som mangel på understøttelse af overførsel af pegere til funktionen (undtagen strenge), nødvendigheden for at køre
«gcc -E» til forbehandling af koden, opbevaring af interaktive *.so, *.o og *.c-filer i den aktuelle mappe, mangel på caching af den transformerede version og udførelse af unødvendige fortolkningsfaser (store forsinkelser ved hver opstart).

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster