基本介紹
- 中文名:self語言
- 創設時間:1986年
- 創設者:David Ungar和Randy Smith
- 創設地點:施樂帕洛阿爾托研究中心
基本特點,原則,程式,Self系統,進程,套用,發展簡史,80年代,90年代,
基本特點
原則
Self語言把概念上的精簡作為設計原則。它取消了類的概念,只有對象的概念,同時把訊息作為最基本的操作。把對象的屬性理解為獲取或更改屬性這兩種方法,從而把屬性的概念簡化為方法;取消了變數和賦值,替代它們的是通過訊息來讀槽和寫槽。
程式
在實現Self系統的過程中,設計研究人員發展出了一種適應性編譯(adaptive compilation)技術。這種技術的採用提高了Self代碼的執行效率。
Self系統
進程
儘管Self系統一次運行在一個進程中,但Self系統實際上可以分成兩個部分:Self 虛擬機和Self世界(Self world)。Self世界是一個Self 對象庫,Self 程式就是Self世界裡的對象,Self虛擬機用來執行這些Self程式。Self虛擬機還提供了一些可供調用的原語,用來實現算術運算、對象複製、輸入輸出等。
套用
當Self程式從終端、檔案或者圖形用戶界面輸入到系統中來時,Self系統把源程式解析轉化為Self對象。Self對象包括數據對象和方法對象,方法對象的代碼部分是用一種指令非常簡單的位元組碼(bytecode)表示的,位元組碼由虛擬機來解釋。對經常執行的方法,虛擬機將進一步把位元組碼轉化為本機代碼,這樣可以提高運行效率。
發展簡史
80年代
Self語言的最初設計是由David Ungar和Randy Smith於1986年在施樂帕洛阿托研究中心提出的,並在1987年的OOPSLA'87的論文SELF: The Power of Simplicity上給出了描述。