Inlinec - ný leið til að nota C kóða í Python forskriftum

Verkefni inlinec Ný aðferð til að samþætta C kóða inn í Python forskriftir hefur verið lögð til. C aðgerðir eru skilgreindar beint í sömu Python kóðaskránni, auðkenndar af „@inlinec“ skreytinganum. Samantektarforskriftin er keyrð eins og hún er af Python túlknum og þáttuð með því að nota vélbúnaðinn sem er til staðar í Python merkjamál, sem gerir það mögulegt að tengja þáttara til að umbreyta handritinu áður en það er þáttað af túlknum (að jafnaði er merkjamálseiningin notuð fyrir gagnsæja texta umkóðun, en hún gerir þér einnig kleift að umbreyta innihaldi handritsins að geðþótta).

Þjálfarinn er tengdur sem eining („frá inlinec import inlinec“), sem framkvæmir fyrstu vinnsluna og þýðir skilgreiningar á C falla sem auðkenndar eru með @inlinec skýringum í ctypes bindingar og kemur í stað meginmáls C fallsins með ákall til þessara bindinga. Eftir slíka umbreytingu fær Python túlkurinn réttan umbreyttan frumtexta handritsins, þar sem C föllin eru kölluð með ctýpur. Svipuð aðferð er einnig notuð í verkefninu Pyxl4, sem gerir þér kleift að blanda HTML og Python kóða í eina skrá.

# kóðun: inlinec
frá inlinec import inlinec

@inlinec
def próf():
#innihalda
ógilt próf() {
printf("Halló, heimur");
}

Þróunin er hingað til kynnt sem tilrauna frumgerð, sem inniheldur slíka annmarka eins og skort á stuðningi við að senda ábendingar (nema strengi) á aðgerðina, þörf á að keyra
„gcc -E“ fyrir forvinnslu kóða, vistun millistigs *.so, *.o og *.c skrár í núverandi möppu, ekki vistun í skyndiminni umbreyttu útgáfunnar og framkvæmir óþarfa þáttunarþrep (langar tafir í hvert skipti sem hún keyrir).

Heimild: opennet.ru

Bæta við athugasemd