Pharo

来自开放百科 - 灰狐
(版本间的差异)
跳转到: 导航, 搜索
(图集)
 
(未显示1个用户的54个中间版本)
第1行: 第1行:
 
{{SeeWikipedia}}
 
{{SeeWikipedia}}
 
  
 
Pharo
 
Pharo
 +
 +
[[文件:pharo-logo.png|right|Pharo]]
  
 
==简介==
 
==简介==
Pharo 是一套开源 [[Smalltalk]] 程序开发平台。Pharo 具备所谓 live programming 的特性,例如实时操控对象,实时更新等。Pharo 支持高级 Web 开发架构,例如 Seaside。
+
Pharo 是一套开源 [[Smalltalk]] 程序开发平台。
  
越来越多的大学和研究机构使用 Pharo
+
Pharo 具备所谓 live programming 的特性,例如实时操控对象,实时更新等。Pharo 支持高级 Web 开发架构,例如 Seaside。
 +
 
 +
Pharo 自 [[Squeak]] 派生,Pharo 旨在创建一个符合 Smalltalk-80 规范的开源 Smalltak 环境。
  
 
Pharo 的虚拟机几乎完全用 Smalltalk 语言打造。自2008年,Pharo 的虚拟机的表现接近最快的 Smalltalk 虚拟机。
 
Pharo 的虚拟机几乎完全用 Smalltalk 语言打造。自2008年,Pharo 的虚拟机的表现接近最快的 Smalltalk 虚拟机。
 +
 +
越来越多的大学和研究机构使用 Pharo。
 +
 +
==生态系统==
 +
*[https://consortium.pharo.org/ Pharo consortium portal] [https://talks.pharo.org/ Consortium Activity Reports]
  
 
==功能==
 
==功能==
 +
[https://pharo.org/features Pharo Features]
 +
 +
[https://medium.com/smalltalk-talk/behold-pharo-the-modern-smalltalk-38e132c46053 Behold Pharo: The Modern Smalltalk]
 +
 +
Pharo is to Smalltalk as [[Clojure]] is to [[Lisp]]. PharoJS (and Amber) is to Pharo as [[ClojureScript]] is to Clojure.
 +
 +
==版本==
 +
[[文件:Pharo-Versions.png|right|Pharo Versions]]
 +
[https://docs.huihoo.com/smalltalk/esug/ESUG2018/02-Tuesday/02-Pharo%20Consortium%20-%20A%20roadmap%20to%20solid%20evolution./02-ESUG2018-Pharo.pdf Pharo: A roadmap to solid evolution]
 +
 +
*11.0
 +
*[http://wiki.astares.com/pharo/647 10.0]
 +
*[http://wiki.astares.com/pharo/646 9.0]
 +
*[http://wiki.astares.com/pharo/645 8.0] [https://docs.huihoo.com/smalltalk/esug/ESUG2019/02Tuesday/01-pharo8-alpha.pdf Pharo 8.0 alpha]
  
 
==指南==
 
==指南==
 +
打开 Playgroud
 +
100 factorial
 +
a := #('first' 'second' 'third')
 +
b := a
 +
a = b
 +
'smalltalk' size
 +
'samlltalk' at: 6
 +
55 gcd: 30 "5" 最大公除数
 +
6 lcm: 10 "30" 最小公倍数
 +
使用 [https://github.com/ObjectProfile/Roassal3 Roassal] 可视化引擎
 +
c := RSCanvas new.
 +
c add: (RSLabel new fontSize: 30; text: 'Hello World').
 +
c openOnce
  
 
==项目==
 
==项目==
 
[https://github.com/pharo-open-documentation/awesome-pharo Awesome Pharo] [[文件:awesome.png]]
 
[https://github.com/pharo-open-documentation/awesome-pharo Awesome Pharo] [[文件:awesome.png]]
 +
*[https://www.squeaksource.com/ SqueakSource]
 +
*[https://github.com/pharo-project/pharo Pharo @ GitHub]
 +
*[https://catalog.pharo.org/ Pharo Catalog]
 +
*[https://github.com/woden-engine/woden WODEN World Dynamic Engine] A 3D graphics engine for Pharo
 +
*[https://github.com/pharo-iot PharoThings] 物联网项目,Live programming platform for IoT projects based on Pharo
 +
*[http://www.github.com/pharo-contributions/ Some external packages of common interest]
 +
*[https://gtoolkit.com/ Glamorous Toolkit (GT)]
 +
*[https://github.com/A4BP/ A4BP (Assessment for Business Process)]
 +
*[http://www.github.com/pharo-graphics/ New generation graphical layer]
 +
*[http://www.github.com/pharo-spec/ UI Builder for Pharo]
 +
*[http://www.github.com/pharo-vcs/ Version control for Pharo]
 +
*[http://www.github.com/pharo-rdbms/ Database drivers and object relational mapper]
 +
*[http://www.github.com/pharo-nosql/ No SQL database]
 +
*[https://github.com/pharo-ai Algorithms and models for AI]
 +
*[https://github.com/pharo-iot Libraries and IDE]
 +
*[https://github.com/pharo-containers Extra and well packaged collections for Pharo]
 +
*[https://github.com/pharo-open-documentation Nice documentation]
 
*[https://github.com/OpenPonk/openponk OpenPonk Modeling Platform]
 
*[https://github.com/OpenPonk/openponk OpenPonk Modeling Platform]
 +
*[https://www.gnu.org/software/dr-geo/ Dr.Geo] 设计和操作有约束的互动几何草图
 +
*[https://github.com/PolyMathOrg/PolyMath PolyMath] Scientific Computing with Pharo
 +
*[https://github.com/DuneSt/MaterialDesignLite MaterialDesignLite for Seaside]
 +
*[https://github.com/PierceNg/OpenSSL-Pharo OpenSSL-Pharo]
 +
*[https://github.com/OpenPonk/openponk OpenPonk] an Open Conceptual Modelling Platform
 +
*[[Natural language processing]] [https://github.com/mark-watson/nlp_smalltalk Library for Pharo Smalltalk]
 +
 +
==教育==
 +
*[https://mooc.pharo.org/ Pharo Mooc] 通过 Pharo Launcher 新建 Pharo Mooc Image
  
 
==文档==
 
==文档==
*[http://docs.huihoo.com/smalltalk/esug/conferences/2012PharoConf/ Pharo Conf 2012]
+
*[http://docs.huihoo.com/smalltalk/esug/ Pharo Conf]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/02Tuesday/06-porting-visual-works-to-pharo.pdf Porting visual works to Pharo]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/02Tuesday/11-taskit.pdf ESUG 2019: Concurrency]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/01Monday/06-future-of-testing.pdf DrTests: The future of testing in Pharo]
 +
*[https://github.com/pharo-open-documentation/pharo-wiki Pharo wiki]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/02Tuesday/02-spec2.pdf Pharo, Spec and GTK (revisiting the desktop world)]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/02Tuesday/03-present-and-future-of-the-pharo-vm.pdf Present and Future of the Pharo VM]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/03Wednesday/03-Security-Revisited.pdf Onion and Swiss Cheese Security Revisited]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/03Wednesday/04-Evolving%20Allstocker.pdf Evolving ALLSTOCKER] Agile increments with Pharo Smalltalk 电子商务平台基于 [https://github.com/SeasideSt/Seaside Seaside] [https://github.com/pharo-rdbms/glorp Glorp] [https://github.com/mumez/nagare-logger Nagare] [https://github.com/newapplesho/aws-sdk-smalltalk AWS SDK for Smalltalk] 构建
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/03Wednesday/06-LiveTypingDemo.pdf Live Typing Automatic Type Annotation that improves the Programming eXperience]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/03Wednesday/10-strategies%20for%20non-blocking%20ffi.pdf Non-Blocking Strategies for FFI]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/Domain%20Specific%20Tool/02-IWST-2019-Generating%20UML%20models%20with%20inferred%20types%20from%20Pharo%20code%20-JanBliznicenko.pdf Generating UML Models with Inferred Types from Pharo Code]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/Debug%20and%20Memory%20saving/5-Porting%20programs%20with%20a%20virtualization%20approach.pdf Towards easy program migration using language virtualization]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/Debug%20and%20Memory%20saving/7-tailCallElimination.pdf Tail Call Elimination in Opensmalltalk]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/Debug%20and%20Memory%20saving/6-challenges-in-bootstrapping-reflective-kernels.pdf Challenges in Debugging Bootstraps of Reflective Kernels]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/Tests%2C%20Smells%20and%20refactoring/05-esug19-Magic%20Literals%20in%20Pharo-JulienDeplanque.pdf Magic Literals In Pharo]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/Tests%2C%20Smells%20and%20refactoring/07-%20IWST19-Test%20Amplification%20in%20the%20Pharo%20Smalltalk%20Ecosystem-Mehrdad%20Abdi.pdf Test Amplification in the Pharo Smalltalk Ecosystem]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/Tests%2C%20Smells%20and%20refactoring/08-%20IWST%2019-%20Exposing%20Test%20Analysis%20Results%20with%20DrTests_-Dayne%20Guerra.pdf Exposing Test Analyses with DrTests]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/VM%20and%20Low%20level/1-GILda.pdf GildaVM] a Non-Blocking I/O Architecture for the [http://www.mirandabanda.org/cogblog/about-cog/ Cog VM]
 +
*[https://github.com/hogoww/Illicium Illicium] [https://docs.huihoo.com/smalltalk/esug/ESUG2019/IWST/VM%20and%20Low%20level/3-Illicium.pdf Compiling Pharo to C]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2018/01-Monday/12-Teaching%20ICT%20trends%20in%20Pharo/ESUG18-CB.pdf Teaching ICT Trends with Pharo]
 +
*[https://docs.huihoo.com/smalltalk/esug/ESUG2018/05-Friday/01-Pharo%20IoT/ESUG2018-PhraroIoT.pdf Using Pharo to playing with GPIOs and sensors on IoT devices remotely]
  
 
==图书==
 
==图书==
*[http://book.huihoo.com/smalltalk/pharo/ Pharo Books]
+
*[https://books.pharo.org/ Pharo Books]
 +
*[https://book.huihoo.com/smalltalk/pharo/ Pharo Books 镜像]
 +
*[https://books.pharo.org/numerical-methods/ Object-Oriented Implementation of Numerical Methods An Introduction with Pharo]
 +
*[https://github.com/SquareBracketAssociates/LearningOOPWithPharo Learning Object-Oriented Programming, Design and TDD with Pharo]
 +
*[https://books.pharo.org/booklet-AMiniSchemeInPharo/ Physche: A Little Scheme in Pharo]
 +
*《Agile Visualization with Pharo: Crafting Interactive Visual Support Using Roassal》 2022
 +
*《Agile Artificial Intelligence in Pharo: Implementing Neural Networks, Genetic Algorithms, and Neuroevolution》 2020 [https://github.com/Apress/agile-ai-in-pharo souce code @ github]
 +
 
 +
==案例==
 +
*[https://pharo.org/success/ Pharo Success Stories]
 +
*[http://mutabit.com/offray/blog/en/entry/sdv-infomed Pharo is used in wide-scale data visualization for medicines in 16 countries]
  
 
==图集==
 
==图集==
 
<gallery>
 
<gallery>
 +
image:Pharo-System-Browser.png|Pharo
 
image:phratch-on-pharo.png|Phratch
 
image:phratch-on-pharo.png|Phratch
 +
image:Pharo-9.0.png|Pharo 9.0
 +
image:gtoolkit-importing-cpp-blueprint-ast.png|Glamorous Toolkit软件分析
 +
image:Seaside-Control-Panel.png|Seaside控制面板
 +
image:seaside-status.png|Seaside状态
 +
image:OpenPonk-modeling-platform.png|OpenPonk模型平台
 +
image:GNU-DrGeo.png|GNU Dr.Geo
 
</gallery>
 
</gallery>
  
 
==链接==
 
==链接==
 
*[http://pharo.org Pharo官网]
 
*[http://pharo.org Pharo官网]
 +
*[http://files.pharo.org/ Pharo File Server]
 
*[https://www.pharocloud.com/ Pharocloud] Pharo platform as a Service: put your Smalltalk web-application online at Pharocloud in just a couple clicks
 
*[https://www.pharocloud.com/ Pharocloud] Pharo platform as a Service: put your Smalltalk web-application online at Pharocloud in just a couple clicks
 
*[http://docs.huihoo.com/smalltalk/ Smalltalk文档]
 
*[http://docs.huihoo.com/smalltalk/ Smalltalk文档]
 
*[https://ci.inria.fr/pharo/ Pharo Jenkins]
 
*[https://ci.inria.fr/pharo/ Pharo Jenkins]
 
*[https://ci.inria.fr/pharo-contribution/ Pharo Contribution Jenkins]
 
*[https://ci.inria.fr/pharo-contribution/ Pharo Contribution Jenkins]
 +
*[https://lepiter.io/feenk/steering-agile-architecture-by-example--th-e2p6aps2brbby94deek31xqxh/ Steering Agile Architecture by Example: the Feature Toggles From Open edX]
  
 
[[category:programming language]]
 
[[category:programming language]]
 
[[category:smalltalk]]
 
[[category:smalltalk]]
[[category:huihoo]]
+
[[category:Huihoo Foundation]]

2022年9月19日 (一) 04:29的最后版本

Wikipedia-35x35.png 您可以在Wikipedia上了解到此条目的英文信息 Pharo Thanks, Wikipedia.

Pharo

Pharo

目录

[编辑] 简介

Pharo 是一套开源 Smalltalk 程序开发平台。

Pharo 具备所谓 live programming 的特性,例如实时操控对象,实时更新等。Pharo 支持高级 Web 开发架构,例如 Seaside。

Pharo 自 Squeak 派生,Pharo 旨在创建一个符合 Smalltalk-80 规范的开源 Smalltak 环境。

Pharo 的虚拟机几乎完全用 Smalltalk 语言打造。自2008年,Pharo 的虚拟机的表现接近最快的 Smalltalk 虚拟机。

越来越多的大学和研究机构使用 Pharo。

[编辑] 生态系统

[编辑] 功能

Pharo Features

Behold Pharo: The Modern Smalltalk

Pharo is to Smalltalk as Clojure is to Lisp. PharoJS (and Amber) is to Pharo as ClojureScript is to Clojure.

[编辑] 版本

Pharo Versions

Pharo: A roadmap to solid evolution

[编辑] 指南

打开 Playgroud

100 factorial 
a := #('first' 'second' 'third')
b := a
a = b
'smalltalk' size 
'samlltalk' at: 6
55 gcd: 30 "5" 最大公除数
6 lcm: 10 "30" 最小公倍数

使用 Roassal 可视化引擎

c := RSCanvas new.
c add: (RSLabel new fontSize: 30; text: 'Hello World').
c openOnce

[编辑] 项目

Awesome Pharo Awesome.png

[编辑] 教育

  • Pharo Mooc 通过 Pharo Launcher 新建 Pharo Mooc Image

[编辑] 文档

[编辑] 图书

[编辑] 案例

[编辑] 图集

[编辑] 链接

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱