فالا
عودة للموسوعةفالا (بالإنجليزية: Vala) هي لغة برمجة كائنية التوجه مع مترجم مضيف لنفسه يولد أكوادًا بلغة С ويستخدم نظام GObject.
فالا هي لغة مماثلة في نحوها للغة #C وتتضمن مزايا مثل الدوال المجهولة والإشارات والخصائص والتعميمات وإدارة الذاكرة المساعدة والتعامل مع الاستثناءات واستنتاج النوع ومفردة foreach. أراد مطوراها يورج بيلتر ورفائيل ساندريني جلب هذه المزايا لنظام تطبيق البرامج في لغة С مع قدر قليل من الإضافات الزائدة وعدم توفير دعم خاص في وقت التشغيل من خلال استهداف نظام كائنات GObject. وبدلًا من الترجمة مباشرة إلى لغة الآلة أولغة التجميع، يقوم المجمع بالتجميع إلى لغة وسيطة منخفضة المستوى. إذ يقوم المترجم بالتحويل بطريقة مصدر إلى مصدر إلى لغة С، والتي تجمع بعد ذلك باستخدام مترجم С لمنصة معينة. ويعد مجمع GCC أشهر مترجمات لغة С.
لإدارة الذاكرة، يتضمن نظام GObject عد المراجع. في لغة С،قد يكون على المبرمج حتى يضيف أويزيل المراجع، لكن في Vala، تدار أعداد هذه المراجع بصفة آلية إذا استخدم المبرمج أنواع المراجع المضافة افتراضيًّا في اللغة بدلًا من المؤشرات العادية.
استخدام إمكانيات من مخطات الكود الأصلي يحتاج ملفات vapi، والتي تعهد قابلات المخطة. وكتابة تعريفات هذه القابلات موثق جيدًا لمخطات С، خاصة إذا كانت مبنية على GObject. مع ذلك، مخطات ++С غير مدعومة. تتوفر ملفات vapi لجزء كبير من منصة GNOME، بما في ذلك GTK.
ابتكرت Vala بواسطة يورج بيليتر وطبقها معه رفائيل ساندريني، وأنهيا مترجمًا مضيفًا لنفسه في مايو2006.
مثال للكود
void main () {
print ("Hello World\n");
انظر أيضًا
- إلمنتري (توزيعة) - توزيعة لينكس بُرمجت الكثير من تطبيقاتها بلغة فالا
استشهادات
- ^ https://gitlab.gnome.org/GNOME/vala/-/tags/0.46.1 — تاريخ الاطلاع: 22 سبتمبر 2019
- ^ "Writing Multimedia Applications with Vala". مؤرشف من الأصل في 28 أغسطس 2012.
- صور وملفات صوتية من كومنز
التصنيفات: جنوم, برمجيات 2006, برمجيات تسخدم رخصة إل جي بي إل, برمجيات حرة متعددة المنصات, لغات برمجة, لغات برمجة أنشئت في 2006, لغات برمجة إستاتيكية, لغات برمجة كائنية التوجه, صفحات تستخدم خاصية P154, صفحات بها بيانات ويكي بيانات, صفحات تستخدم خاصية P571, صفحات تستخدم خاصية P306, صفحات تستخدم خاصية P275, صفحات بها مراجع ويكي بيانات, صفحات تستخدم خاصية P348, صفحات تستخدم خاصية P737, صفحات تستخدم خاصية P1195, صفحات تستخدم خاصية P856, مقالات تحتوي نصا بالإنجليزية, جميع مقالات البذور, بذرة لغة برمجة, بوابة برمجة الحاسوب/مقالات متعلقة, بوابة برمجيات حرة/مقالات متعلقة, جميع المقالات التي تستخدم شريط بوابات