Remove ads
来自维基百科,自由的百科全书
Pharo 是一套開源Smalltalk程式開發平台。Pharo具備所謂現場編程的特性,例如即時操控對象,即時更新等。Pharo支援進階Web開發框架,例如Seaside。
編程範型 | 物件導向 |
---|---|
實作者 | Pharo 社區 |
釋出時間 | 2008年 |
目前版本 |
|
作業系統 | Linux、OS X、Windows |
許可證 | MIT license, 部分採用 Apache License 2.0[2] |
網站 | pharo |
啟發語言 | |
Smalltalk-80(Squeak) |
Pharo是在2008年3月從Squeak v3.9分叉而來[4][5][6][6]:10[7]。Pharo的英文名稱源自希臘語(Φάρος),意為燈塔。事實上在其標誌上的最後一個字母O里有一座燈塔。
作為Smalltalk平台,Pharo具備Smalltak的特點:
它的虛擬機器的特點:
它的內建軟件的特點:
憑藉Smalltalk與生具來的特點, Pharo最大的優勢之一是在修改代碼時不必全程編譯。例如,在除錯窗口裏編輯一個方法或者建立一個方法後不需要重新啟動行程。這就是所謂的「編輯、繼續」,有別於在其他語言裏常見的「編輯、編譯然後執行」。
Pharo語法基於了具有一些擴充的Smalltalk-80語言語法。這些擴充在現代Smalltalk方言中是常見的。
{1. 2. 1+2}
0
到255
範圍內的整數構成:#[1 2 3 4]
3.14s2
<gtInspectorPresentationOrder: 30>
提供的Pharo語言語法是非常簡單和極簡主義的。基本語言元素通常可以體現在一張明信片上。它的文法被歸類為LL(1)。
自Squeak衍生,Pharo旨在建立一個符合Smalltalk-80規範的開源Smalltak環境。它專注於現代軟件工程和程式開發技術,而Squeak定位於教學。
版本 | 發行時間 | 主要特徵 |
---|---|---|
2008年3月16日 [9] | 從Squeak環境分叉 | |
1.0 | 2010年4月15日 | 真實的閉包,移除EToys和MVC |
1.1 | 2010年7月26日 | Cog JIT VM,設置框架 |
1.2 | 2011年3月29日 | 新的Finder,新近變更工具,改進的Help,更好的theme |
1.3 | 2011年8月 | Zinc,無頭映像 |
1.4 | 2012年4月[10] | Ring元模型,更好的代碼模擬器 |
2.0 | 2013年3月18日[11] | 瀏覽器改進,QA工具,Fuel序列化器,更好的檔案API |
3.0 | 2014年4月[12] | 新的模組編譯器(Opal)和除錯器,續體 |
4.0 | 2015年4月[13] | GTools(Playground,Inspector,Spotter),槽模型 |
5.0 | 2016年5月[14] | Spur VM,UFFI,改進的反射性 |
6.0 | 2017年6月6日[15] | 64-bit和Git支援 |
6.1 | 2017年7月24日[16] | 改進的Git支援 |
7.0 | 2019年1月22日[17] | 引導, 新的代碼瀏覽器(Calypso), 有狀態的trait |
8.0 | 2020年1月20日[18] | 改進的Git支援,測試,重構和Windows |
9.0 | 2021年7月15日[19] | GTK3支援,對象中心除錯器和檢查器,重構,官方ARM VM |
10.0 | 2022年4月5日[20] | 清理,模組化,很多重寫和改進的工具 |
11.0 | 2023年5月11日[21] | Ephemerons,SIMD,更有效的閉包,改進的工具 |
12.0 | 2024年4月26日[22] | 新的除錯點系統,新的類別定義,持久空間 |
Pharo有一個活躍的社區和寬鬆的MIT許可。學習Smalltalk程式語言的利器,是兩本介紹Pharo的書。第一本書為《Pharo by Example》[23] ,免費下載。第二本書是《Deep into Pharo》,免費下載。[24]
初學者最好的體驗Pharo的方法是在其官方網站下載一站式版本[25]。
Pharo意在開發為公司和研究人員開發一個現代Smalltalk。作為範例,Pharo用於開發Seaside,一個Web應用框架。Pharo有兩個支援機構,面向公司的Pharo財團[26],和面向用戶的Pharo協會[27]。
一些公司在開發中使用Pharo[28],典型例子為:
一些教育機構使用Pharo,包括:
一些使用Pharo的研究機構:
Pharo的虛擬機器幾乎完全用Smalltalk語言打造。自2008年,Pharo的虛擬機器的表現接近最快的Smalltalk虛擬機器。[33]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.