مقاله‌ی زیر به همراه خلاصه آن در وب‌سایت ویکیپدیا آمده است. موضوع آن را مشخص کنید

مقاله: سلف عمدتا توسط david ungarوrandall smith در سال ۱۹۸۶ در حالی که روی پروژه xerox parcکار می‌کردند، طراحی شد. هدف آن‌ها این بود که حالتی از هنر را در پروژه برنامه نویسی وارد کنند، یکبار smalltalk ۸۰ توسط آزمایشگاه‌ها عرضه شد و به‌طور جدی در صنعت به کار گرفته شد. آن‌ها به دانشگاه استنفورد رفتند و کار روی زبان را ادامه داد، ساختن اولین کامپایلر سلف در سال ۱۹۸۷ صورت گرفت. در آن موقع تلاش برای رشد دادن یک سیستم کامل برای سلف بر خلاف صرفا یک‌زبان بودن متمرکز شد. اولین نسخه عمومی در سال ۱۹۹۰ عرضه شد، و سال بعد تیم محقق به کمپانی sunmicrosystems منتقل شدند و کار روی زبان را ادامه دادند. تا سال ۱۹۹۵ چندین نسخه جدید تا نسخه ۴ به بازار آمد. نسخه ۴ ٫ ۳ آن در سال ۲۰۰۶ عرضه شد و بر روی سیستم‌های mac os xوsolaris اجرا شد. نسخه جدید آن یعنی self ۴ ٫ ۴ برای سیستم‌های mac os xوlinux توسط یک گروهی از اعضای سابق و برنامه نویسان مستقل توسعه داده شد. زبان سلف همچنین الهام‌بخش زبان‌های بعدی بر مبنای مفاهیمش شد. از قابل توجه‌ترین آن‌ها شاید زبان‌های newtonscript برای apple newton و javascript است، که در درجه اول برای صفحات وب پویا در تمامی مرورگرهای امروزی استفاده می‌شود. از زبان‌های دیگر می‌توان io,cel,lisaac وagora را نام برد. ibm tivoli framework که سیستم شی گرا را تعمیم داد، در سطوح پایین‌تر، سیستم شی گرا مبتنی بر prototype سلف است. ۱. کلاس‌ها خصوصیات پایه و رفتار اشیا را تعریف می‌کنند. ۲. نمونه‌های اشیا جلوه‌های خاصی از یک کلاس می‌باشند. برای مثال، اشیایی از کلاس vehicle را که یک اسم و قابلیت انجام اعمال زیادی را دارد را در نظر بگیرید، مانند drive to work و deliver construction materials. bob's car یک شی خاص از کلاس vehicle است. در نظریه یک فرد می‌تواند یک پیام به bob's car بفرستد، و به آن بگوید: deliver construction materials. این مثال یکی از مشکلات این رویکرد نشان می‌دهد. bob's car ممکن است یک ماشین اسپورت باشد، قادر به حمل وتحویل وسایل ساختمان نمی‌باشد. (از لحاظ مفهومی)، اما این یک قابلیت است که vehiclesاین مدل را داشته باشند. یک مدل سودمندتر استفاده از زیر کلاس‌ها برای ساختن ویژگی‌هایی از vehicle است;برای مثال ماشین مسابقه و تراکتور. فقط اشیا کلاس تراکتور نیازمند یک ساز و کار برای تحویل مصالح …
خلاصه: سلف یک‌زبان برنامه نویسی شی گرا مبتنی بر مفهوم پروتوتایپ (نمونه اولیه) است. این زبان عمدتا به عنوان یک سیستم آزمون تجربی برای طراحی زبان در سال‌های ۱۹۹۰ - ۱۹۸۰ مورد استفاده قرار گرفت. در سال ۲۰۰۶ سلف هنوز به عنوان بخشی از پروژه klein، که یک ماشین مجازی سلف که کاملا به زبان سلف نوشته‌شده بود، در حال توسعه بود. آخرین ورژن آن self ۴ ٫ ۴ می‌باشد که درجولای ۲۰۱۰ منتشر گردید. چندین تکنیک just-in-time compilation در سلف پیشگام بودند و در پروژه سلف بهبود بخشیده شدند و به‌طور هم‌زمان نیاز آن‌ها به یک‌زبان شی گرا سطح بالا که حداقل نصف سرعت بهینه c را داشته باشدعملی شد. این تکنیک‌ها بعدها برای ماشین مجازی java's hotspot گسترش داده شدند. 
موضوع:
سلف (زبان برنامهٔ نويسي)