لغة البرمجة Self هي لغة برمجة موجهة نحو الكائنات (Object-oriented) تستند إلى مفهوم النماذج الأصلية (Prototypes). بدأ تطويرها في عام 1987 على يد ديفيد أونغار (David Ungar). تعتبر Self بدايةً لها كلهجة من لغة Smalltalk، حيث تكون محتوية على نوعية البيانات ديناميكية الطريقة (Dynamically typed)، وتستخدم الترجمة على الفور (Just-in-time compilation – JIT)، بالإضافة إلى نهج الكائنات المبني على النماذج الأصلية.
تم استخدام Self في البداية كنظام تجريبي تجريبي لتصميم اللغات في فترة الثمانينيات والتسعينيات. وفي عام 2006، كانت Self لا تزال قيد التطوير كجزء من مشروع Klein، الذي كان عبارة عن آلة افتراضية للغة Self كتبت بالكامل بواسطة Self. وتعتبر أحدث إصدارة لها هي 2017.1 الصادرة في مايو 2017.
تم تقديم العديد من تقنيات الترجمة على الفور في بحث Self وتطويرها، حيث كانت هذه التقنيات ضرورية للسماح للغة موجهة نحو الكائنات بأداء بمعدل يصل إلى نصف سرعة اللغة C المُحسنة. جزء كبير من تطوير Self حدث في شركة Sun Microsystems، وتم نشر التقنيات التي طوروها في وقت لاحق لآلة Java’s HotSpot الافتراضية. في نقطة ما، تم تنفيذ نسخة من Smalltalk في Self. وبسبب قدرتها على استخدام JIT، قدمت أداءً ممتازًا للغاية.
Self تتميز بعدة ميزات منها القدرة على القيام بالتعليقات والتنسيق الدلالي وعدم وجود تعليقات السطر. يمكن الوصول إلى مزيد من المعلومات حول Self عبر موقعها الرسمي هنا، وكذلك من خلال صفحتها على ويكيبيديا هنا.
تعتبر Self مفتوحة المصدر ويمكن الوصول إليها من خلال الروابط المتاحة على صفحتها الرسمية.