Python хөрвүүлэгч Кодон хэвлэгдэн гарлаа

Exaloop стартап нь Python-ын ажиллах хугацаатай холбоогүй, гаралт болгон цэвэр машины код үүсгэх чадвартай Python хэлний хөрвүүлэгчийг хөгжүүлдэг Кодон төслийн кодыг нийтэлжээ. Хөрвүүлэгчийг Python-той төстэй Seq хэлний зохиогчид боловсруулж байгаа бөгөөд түүний хөгжлийн үргэлжлэл болгон байрлуулсан болно. Төсөл нь мөн Python дахь номын сангийн дуудлагыг орлох функцүүдийн номын сан болон гүйцэтгэгдэх файлуудын ажиллах цагийг санал болгодог. Хөрвүүлэгч, ажиллах цаг, стандарт номын сангийн эх кодыг C++ (LLVM-ийн хөгжүүлэлтийг ашиглан) болон Python ашиглан бичсэн бөгөөд BSL (Business Source License) дагуу түгээдэг.

BSL лицензийг MySQL-ийн үүсгэн байгуулагчид Open Core загвараас өөр хувилбар болгон санал болгосон. BSL-ийн мөн чанар нь дэвшилтэт функцүүдийн кодыг анхлан өөрчлөх боломжтой байдаг боловч арилжааны лиценз худалдаж авах шаардлагатай нэмэлт нөхцөл хангагдсан тохиолдолд л тодорхой хугацаанд үнэ төлбөргүй ашиглаж болно. Кодон төслийн лицензийн нэмэлт нөхцлүүд нь кодыг 2.0 жилийн дараа (3 оны 1-р сарын 2025) Apache XNUMX лиценз рүү шилжүүлэхийг шаарддаг. Энэ хүртэл лиценз нь арилжааны бус зорилгоор ашигласан тохиолдолд хуулбарлах, түгээх, өөрчлөхийг зөвшөөрдөг.

Гүйцэтгэх боломжтой файлуудын гүйцэтгэл нь Си хэл дээр бичигдсэн програмуудтай ойролцоо байна. CPython-ийг ашиглахтай харьцуулахад Codon-г ашиглан хөрвүүлэх үед гүйцэтгэлийн өсөлт нь нэг урсгалтай гүйцэтгэлийн хувьд 10-100 дахин их байхаар тооцоолсон. Нэмж дурдахад, Python-оос ялгаатай нь Codon нь олон урсгалыг ашиглах чадварыг нэмж хэрэгжүүлдэг бөгөөд энэ нь гүйцэтгэлийг улам бүр нэмэгдүүлэх боломжийг олгодог. Кодон нь одоо байгаа Python төслүүдэд эмхэтгэсэн дүрслэлийг ашиглахын тулд бие даасан функцийн түвшинд эмхэтгэх боломжийг олгодог.

Кодон нь модульчлагдсан архитектурыг ашиглан бүтээгдсэн бөгөөд энэ нь залгаасуудаар дамжуулан функцийг нэмэгдүүлэх боломжийг олгодог бөгөөд үүний тусламжтайгаар та шинэ номын сан нэмэх, хөрвүүлэгчийн оновчлолыг хэрэгжүүлэх, тэр ч байтугай нэмэлт синтаксийг дэмжих боломжтой. Жишээлбэл, биоинформатик болон санхүүгийн математикт ашиглах хэд хэдэн залгаасуудыг зэрэгцүүлэн хөгжүүлж байна. Boehm хог цуглуулагчийг санах ойг удирдахад ашигладаг.

Хөрвүүлэгч нь Python-ийн ихэнх синтаксийг дэмждэг боловч машины кодыг хөрвүүлэх нь Кодоныг CPython-ын ил тод орлуулалт болгон ашиглахаас сэргийлдэг хэд хэдэн хязгаарлалт тавьдаг. Жишээлбэл, Codon бүхэл тоонд 64 битийн int төрлийг ашигладаг бол CPython бүхэл тоонд хязгааргүй хэмжээг ашигладаг. Том кодын суурь нь Кодон нийцтэй байдлыг хангахын тулд кодын өөрчлөлтийг шаарддаг. Дүрмээр бол үл нийцэх байдал нь Python-ийн тодорхой модулиудын Codon-ийн хэрэгжилт дутмаг, хэлний зарим динамик шинж чанарыг ашиглах боломжгүйгээс үүсдэг. Ийм үл нийцэх байдлын хувьд хөрвүүлэгч нь асуудлыг хэрхэн тойрч гарах талаархи дэлгэрэнгүй оношлогооны мессежийг гаргадаг.

Python хөрвүүлэгч Кодон хэвлэгдэн гарлаа


Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх