Aytgancha, AOT compilation - Ahead of Time compilation.
Kompilyatsiya qilinadigan tillar shunaqa deyiladi. Masalan C, C++, Rust, Go.
JavaScript interpretatsiya qilinadigan til bo'lib yaralgan. Lekin ECMA stardarti JavaScript engine'lar shunday ishlashi kerak deb shart qo'ymaydi.
Ya'ni JavaScript interpretatsiya yoki kompilayatsiya qilinishini engine belgilaydi. Shuning uchun JavaScriptga til sifatida interpretatsion yoki kompilyatosion deb ta'rif berish to'g'ri bo'lmaydi.
Ammo, tildagi (ECMAScript spetsifikatsiyasi) ba'zi konstruksiyalar engine'ni interpretatsion bo'lishiga signal berishi mumkin. Masalan "eval", "Function" orqali yangi funksiya yasash, "Proxy" kabilar. Lekin spetsifikatsiya ularning ishlash prinsipini belgilaydi xolos. Chunki bu konstruksiyalar uchun engine aynan interpretatsion bo'lishi shart emas. Shunchaki ish sal qiyinlashadi.
Xullas kalom, JavaScript kompilyatsiya bo'lishi ham mumkin. AOT-compiled JS enginelar ham bor. Misol uchun Perry va Porffor.
Yuqoridagi so'rovnomada barcha javoblar to'g'ir deb qabul qilsak ham bo'ladi.
Post #405
1.37K
Brogrammist
- 🔥 7