Debian tarqatmalari uchun takrorlanadigan paketlar talabi kuchaymoqda
Debian hamjamiyati takrorlanadigan paketlar (reproducible builds)ni majburiy qilishni ko'rib chiqmoqda – bu xavfsizlik, ishonchlilik va sifatni oshiradi.

Object Pascal dasturlash tilining sevuvchilari uchun yangi imkoniyatlar ochilmoqda. Blaise nomli zamonaviy kompilyator, eski kod bazalari va murakkab konfiguratsiyalardan xalos bo'lib, dasturchilarga tez, xavfsiz va samarali ishlashni ta'minlaydi.
Blaise – bu self-hosting (ya'ni o'zini o'zi kompilyatsiya qila oluvchi) va zero-legacy (meros qolgan eski xususiyatlar yo'q) yondashuvga asoslangan Object Pascal kompilyatori. U GitHubda ochiq manba sifatida mavjud bo'lib, QBE (Quick Backend) orqa tizimiga asoslanadi, shuningdek, kelajakda LLVM backend ham qo'shilishi rejalashtirilgan.
project.xml Root aggregator (packaging=pom)
│
├── compiler/ The compiler binary (packaging=application)
│ ├── project.xml
│ └── src/
│ ├── main/pascal/ uLexer, uParser, uAST, uCodeGenQBE, ...
│ └── test/pascal/ FPTest test suite for compiler units
│
├── rtl/ Runtime library (packaging=library)
│ ├── project.xml
│ └── src/
│ ├── main/pascal/ System.pas, SysUtils.pas, Classes.pas, ...
│ └── test/pascal/ FPTest test suite for RTL units
│
├── tools/
│ └── migration-analyser/ FPC/Delphi migration report tool (packaging=application)
│ ├── project.xml depends on compiler module
│ └── src/
│ ├── main/pascal/
│ └── test/pascal/
│
├── vendor/qbe/ Vendored QBE backend source (pinned, built from source)
└── docs/ Design documents and specifications
project.xml fayli orqali modul va bog'lanishlarni avtomatik boshqaradi, an'anaviy makefilelarga ehtiyoj qolmaydi.Blaise loyihasi bir nechta modulga bo'lingan:
pasbuild compile
Har bir modul project.xml fayli bilan tavsiflanadi va PasBuild ularni mustaqil tarzda kompilyatsiya qiladi.
pasbuild compile -p debug # includes -g -gl -Criot -gh
pasbuild compile -p release # includes -O2 -CX -XX -Xs
Kompyuterda Free Pascal Compiler 3.2.2+ va GCC/Clang kabi C kompilyatori o'rnatilgan bo'lsa, quyidagi buyruqlar orqali Blaise'ni yaratish mumkin:
pasbuild test
pasbuild compile -p release # optimallashtirilgan versiya
pasbuild compile -p debug # debug ma'lumotlari bilan
Yaratilgan binary compiler/target/blaise yo'lida joylashadi. Misol uchun, Hello.pas faylini quyidagicha kompilyatsiya qilish mumkin:
pasbuild compile -m blaise-compiler
compiler/target/blaise --source Hello.pas --output Hello
Shuningdek, --emit-ir parametri orqali QBE IR (intermediate representation) kodini chiqarish, kompilyatorning ichki ishlashini tahlil qilish imkonini beradi.
# Compile a single file
compiler/target/blaise --source Hello.pas --output Hello
# Compile via project.xml
compiler/target/blaise --project project.xml --config debug --output myapp
# Emit QBE IR (useful for debugging the compiler itself)
compiler/target/blaise --source Hello.pas --emit-ir
Rasmiy jadvalga ko'ra, Blaise quyidagi bosqichlarni amalga oshirgan:
Keyingi bosqichlar:
Blaise, eski Free Pascal yoki Delphi muhitlarida duch keladigan “ko'p dialekt”, “ko'p string turi” kabi muammolarni bartaraf etadi. Avtomatik xotira boshqaruvi va birlamchi debugger dasturchilarga kodni tezroq yozish, xatolarni kamroq topish imkonini beradi. Bundan tashqari, QBE backendning soddaligi va tezligi yuqori samaradorlikni kafolatlaydi.
Qiziqish bildirganlar GitHubdagi loyiha sahifasiga tashrif buyurib, PasBuild yordamida o‘z platformalarida kompilyatorni sinab ko‘rishlari mumkin.