صرير

لغة Squeak هي لغة برمجة كائنية التوجه ، تعتمد على الأصناف ، وتعتمد على الانعكاس . وقد اشتُقت من لغة Smalltalk -80 على يد مجموعة ضمت بعضًا من مطوري Smalltalk-80 الأصليين، في البداية في شركة Apple Computer ، ثم في شركة Walt Disney Imagineering ، حيث كان الهدف منها استخدامها في مشاريع ديزني الداخلية. لاحقًا، حظيت المجموعة بدعم من مختبرات HP وشركة SAP .

يعمل نظام Squeak على آلة افتراضية مكدسة (VM)، مما يتيح درجة عالية من قابلية النقل. يتضمن نظام Squeak رمزًا لإنشاء نسخة جديدة من الآلة الافتراضية التي يعمل عليها، بالإضافة إلى محاكي آلة افتراضية [ 2 ] مكتوب بلغة Squeak.

المطورون

كتب دان إنجلز ، وهو مساهم مهم في مشروع Squeak، الورقة [ 3 ] التي تم بناء Squeak عليها، وقام ببناء بنية خمسة أجيال من لغة Smalltalk.

يُعد آلان كاي مساهماً مهماً في مشروع Squeak، ويتضمن Squeak العديد من عناصر مفهوم Dynabook الذي اقترحه .

أطر عمل واجهة المستخدم

يتضمن برنامج Squeak أربعة أطر عمل لواجهة المستخدم :

  • تطبيق لـ Morphic ، إطار عمل واجهة التلاعب الرسومي المباشر الخاص بـ Self . هذه هي الواجهة الرئيسية لـ Squeak.
  • برمجة نصية محدودة تعتمد على البلاطات في Etoys ، وتعتمد على Morphic.
  • واجهة تجريبية جديدة تُدعى Tweak . في عام ٢٠٠١، اتضح أن بنية Etoy في Squeak قد وصلت إلى حدود إمكانيات بنية واجهة Morphic. اقترح الباحث أندرياس راب من شركة هيوليت-باكارد تعريف "عملية برمجة نصية" وتوفير آلية جدولة افتراضية لتجنب العديد من المشاكل العامة. [ ٤ ] نتج عن ذلك واجهة مستخدم جديدة، مُقترحة لتحل محل واجهة مستخدم Squeak Morphic في المستقبل. أضافت Tweak آليات الجزر، والمراسلة غير المتزامنة، واللاعبين والأزياء، وامتدادات اللغة، والمشاريع، وبرمجة البلاطات. [ ٥ ] نظام الكائنات الأساسي فيها قائم على الفئات، ولكن بالنسبة للمستخدمين، أثناء البرمجة (كتابة النصوص البرمجية)، يبدو وكأنه قائم على النماذج الأولية . يتم إنشاء كائنات Tweak وتشغيلها في نوافذ مشروع Tweak.
  • كانت واجهة MVC ( نموذج -عرض-متحكم ) هي واجهة المستخدم الرئيسية في إصدارات Squeak 3.8 وما قبلها. وهي مشتقة من إطار عمل واجهة المستخدم Smalltalk-80 الأصلي الذي قدم نمط MVC المعماري ونشره على نطاق واسع. [ 6 ] يستمد MVC اسمه من الفئات الأساسية الثلاث لإطار العمل. وبالتالي، يشير مصطلح "MVC" في سياق Squeak إلى كلٍ من أحد أطر عمل واجهة المستخدم المتاحة والنمط الذي يتبعه إطار العمل. ولا يزال MVC متاحًا لمن يرغب في استخدام هذا النوع القديم من الواجهات.

الاستخدامات

يتعاون العديد من المساهمين في Squeak على Open Cobalt ، وهو متصفح مجاني ومفتوح المصدر للعوالم الافتراضية ومجموعة أدوات بناء مبنية على Squeak.

تم تنفيذ الإصدار الأول من سكراتش في سكويك. [ 7 ]

يعتمد نظام OpenQwaq ، وهو نظام مؤتمرات وتعاون افتراضي، على Squeak. [ 8 ]

يُستخدم برنامج Squeak أيضًا في نظام التشغيل Nintendo ES. [ 9 ]

رخصة

يمكن تنزيل Squeak 4.0 والإصدارات الأحدث مجانًا، بما في ذلك شفرة المصدر، كصورة آلة افتراضية مرخصة بموجب ترخيص MIT ، باستثناء بعض شفرة Apple الأصلية، والتي تخضع لترخيص Apache .

أصدرت شركة آبل برنامج Squeak في الأصل بموجب ترخيصها الخاص . ورغم توفر شفرة المصدر وإمكانية تعديلها، إلا أن ترخيص Squeak تضمن بندًا للتعويض منعه من أن يُعتبر برنامجًا حرًا ومفتوح المصدر حقًا .

في عام ٢٠٠٦، أعادت آبل ترخيص برنامج Squeak مرتين. أولاً، في مايو، استخدمت آبل ترخيصها الخاص، ترخيص المصدر العام ، الذي يفي بمفهوم مؤسسة البرمجيات الحرة لترخيص البرمجيات الحرة [ ١٠ ] وحصل على موافقة رسمية من مبادرة المصادر المفتوحة [ ١١ ] كترخيص مفتوح المصدر. مع ذلك، لا يتوافق ترخيص المصدر العام لآبل مع إرشادات دبيان للبرمجيات الحرة . ولتمكين إدراج Etoys في مشروع "حاسوب محمول لكل طفل" ، أُجريت عملية إعادة ترخيص ثانية باستخدام ترخيص أباتشي. في هذه المرحلة، بُذلت جهود أيضًا لمعالجة مسألة الشيفرة البرمجية التي ساهم بها أعضاء مجتمع Squeak، والتي لم يكن من صلاحيات آبل إعادة ترخيصها بشكل منفرد.

لكل مساهمة تم تقديمها بموجب ترخيص Squeak منذ عام 1996، تم الحصول على بيان إعادة ترخيص يسمح بالتوزيع بموجب ترخيص MIT ، وأخيراً في مارس 2010، تم إصدار النتيجة باسم Squeak 4.0، الآن بموجب تراخيص MIT وApache مجتمعة. [ 12 ]

انظر أيضاً

مراجع

  1. "تيم: أحاديث قصيرة صريرية" . تم الاطلاع عليه بتاريخ 28-02-2016 .
  2. ميراندا، إليوت؛ بيرا، كليمنت؛ غونزاليس بوكس، إليسا؛ إنغالز، دان (2018). "عقدان من تطوير الآلات الافتراضية للغة سمول توك: تطوير الآلات الافتراضية الحية من خلال أدوات المحاكاة" . وقائع ورشة العمل الدولية العاشرة لجمعية آلات الحوسبة (ACM) SIGPLAN حول الآلات الافتراضية واللغات الوسيطة (ملف PDF) . مكتبة ACM الرقمية. الصفحات 57-66 . doi : 10.1145/3281287.3281295 . ISBN  9781450360715S2CID 53116661. مؤرشف (PDF) من الأصل بتاريخ 2022-10-09 . تم الاطلاع عليه بتاريخ 2020-11-09 . 
  3. إنغالز، دان؛ كاهلر، تيد؛ مالوني، جون؛ والاس، سكوت؛ كاي، آلان (1997). "العودة إلى المستقبل: قصة سكويك، لغة سمول توك عملية مكتوبة بذاتها" . إشعارات ACM SIGPLAN . 32 (10). مكتبة ACM الرقمية: 318-326 . doi : 10.1145/263700.263754 .
  4. "تعديل: مذكرة التعديل الأصلية" . Tweakproject.org. 2001-07-06. مؤرشف من الأصل في 2011-10-02 . تم الاطلاع عليه في 2011-06-12 .
  5. "تعديل: أوراق بيضاء" . Tweakproject.org. مؤرشف من الأصل بتاريخ 2011-10-02 . تم الاطلاع عليه بتاريخ 2011-06-12 .
  6. بوربيك، ستيف (4 أبريل 1997). "كيفية استخدام نمط نموذج-عرض-متحكم (MVC)" . St-www.cs.uiuc.edu. مؤرشف من الأصل في 1 أغسطس 2009. تم الاطلاع عليه في 12 يونيو 2011 .
  7. "خدش" . wiki.squeak.org . تم الاسترجاع في 23-03-2022 .
  8. "المضي قدماً في التعاون التفاعلي" . 3 مايو 2011.
  9. شيفيلد، براندون (4 ديسمبر 2007). "نظرة داخلية على نظام التشغيل مفتوح المصدر ES من نينتندو" . مطور الألعاب . تم الاطلاع عليه بتاريخ 5 مارس 2024 .
  10. «رأي مؤسسة البرمجيات الحرة بشأن رخصة أبل للمصادر العامة (APSL) 2.0» . Gnu.org. 2011-05-07 . تم الاطلاع عليه بتاريخ 2011-06-12 .
  11. "توضيح بشأن اتفاقية ترخيص البرامج المتقدمة: بيانات صحفية من نظام التشغيل توضح وضع اتفاقية ترخيص البرامج المتقدمة" . Opensource.org. 17-03-1999 . تم الاطلاع عليه بتاريخ 12-06-2011 .
  12. «تم إصدار Squeak 4.0 - وهو الآن مرخص بموجب رخصة MIT/Apache» . The H Open. 16 مارس 2010. تاريخ الاسترجاع: 12 يونيو 2011 .