أوز (لغة برمجة)
أوز هي لغة برمجة متعددة النماذج، طورت في مختبر الجامعة لوفان الكاثوليكية لأنظمة البرمجة، لتعليم لغة البرمجة. لها كتاب أساسي: مفاهيم وتقنيات ونماذج برمجة الحاسوب.
صممت أوز لأول مرة على يد جيرت سمولكا ومجموعة من طلابه في عام 1991. في عام 1996، تابع تطوير لغة أوز بالتعاون مع مجموعة البحثية لسيف الحريدي وبيتر فان روي في المعهد السويدي لعلم الحاسوب. منذ عام 1999، يتم تطوير لغة أوز بشكل متواصل من قبل المجموعة الدولية Mozart Consortium، والتي تكونت في الأصل من جامعة سارلاند، المعهد السويدي لعلم الحاسوب، والجامعة لوفان الكاثوليكية. في 2005، تم نقل مسؤوليات موزارت التطويرية إلى مجموعة مركزة تعرف ب Mozart Board، للهدف الصريح الممثل بفتح تطوير موزارت لمجتمع أكبر.
نظم برمجة موزارت هو التطبيق الأساسي لأوز. يتم إصداره بترخيص مفتوح المصدر من قبل Mozart Consortium. تم انفاذ مزورات إلى يونكس، فري بي إس دي، لينكس، ويندوز، وماك أو إس.
خصائص اللغة
تحتوي لغة أوز[1] على أغلب الأفكار الموجودة في نماذج البرمجة الرئيسية، بما في ذلك المنطق البرمجي، الاقترانات (كلا من lazy evaluation وeager evaluation)، البرمجة الحتمية، الكائنات الموجهة، القيود، التوزيع، والبرمجة المتزامنة. تمتلك أوز كلا من دلالات رسمية بسيطة، والتطبيق الفعال. أوز هي لغة موجهة التزامن، حيث تم تقديم المصطلح من قبل جو ارمسترونغ المصمم الرئيس ل Erlang language. تسهل اللغة موجهة التزامن من استخدام التزامن وتجله أكثر فعلية. تدعم أوز واجهة المستخدم الرسومية (GUI) لغة QTk.[2]
بالإضافة إلى برمجة النماذج المتعددة، تكمن نقاط القوة الرئيسية لأوز في برمجة القيد والبرمجة الموزعة. نظرا لتصميمها القائم على العوامل، مما يتيح لها القدرة على تطبيق نموذج برمجة الشبكة الشفافة الموزعة. يجعل هذا النموذج من السهل البرمجة المفتوحة على برامج تتحمل الخطأ داخل اللغة. بالنسبة لبرمجة القيد تقدم أوز فكرةcomputation spaces، مما يسمح لاستخدام تقنيات البحث المعرفة من قبل المستخدم واستراتيجيات التوزيع المتعامد في مجال القيد.
سرعة التنفيذ
سرعة التنفيذ لبرنامج من إنتاج مترجم موزارت (نسخة 1.4.0 يطبق Oz 3) بطيئة جدا. عند الأخذ بالاعتبار مجموعة من المعايير فأن سرعته أبطأ بما متوسطه 50 مرة من مجموعة مترجمات جنو (GCC) للغة الC، عند حل المهام المعيارية.[3]
المراجع
- Gert Smolka (1995). "The Oz Programming Model" (PDF). Lecture Notes in Computer Science. 1000: 324–343. doi:10.1007/BFb0015252. ISBN 978-3-540-60105-0.
- "QTk". Archived from the original on 20 May 2013. Retrieved 6 April 2009.
- "Which programming languages are fastest? | Computer Language Benchmar…"، archive.ph، 13 يوليو 2012، مؤرشف من الأصل في 2 أكتوبر 2021، اطلع عليه بتاريخ 01 أكتوبر 2021.
- بوابة علم الحاسوب