文章目录
日常备忘。
由于 Pharo 派生自 Squeak,所以很多资源是可以共用的
一些材料
语法备忘
Array(list)
将 list 视为不可变的结构(历史不可变),每次都生成新的.
发挥 LISP 精神,灵活操控 list。
只使用少量操作符:
- atom
- eq (
x=y) - car (
[:x |x at: 1.]) - cdr (
[:x |x copyFrom: 2 to: x size.]) - cons (
[:x :y|Array with: x with: y]) - cond (
ifTrue:)
|
|

Smalltalk 源码不是S表达式,尽可能将 list 用作 S表达式, 灵活使用 block, 诸如: #([:x |x at:1.], 1 2 3)
|
|
由于 Smalltalk 和LISP 一样(Alan Kay是LISP忠实粉丝)是一门关注late binding的语言,所以 list 中可以携带各种东西!
|
|
create
|
|
query && utils
|
|
Dictionaries
|
|
环境介绍(视频)
常用
Morphic
late binding
在持续积累 late binding 相关技能
Dynamic Message Calling/Compiling
|
|
连接
与外部系统通信
- FFI
- OSC
- ZeroMQ
- Socket
- HTTP/websocket/MQTT
- Scratch Client
OSC
在Squeak中, 下载 OSC : OSC-SimonHolland, 之后拖到 Squeak 桌面,加载使用即可。
|
|
Scratch Client
解析工具
- 正则表达式
- ohm-S
- PetitParser
参考
文章作者 种瓜
上次更新 2020-11-18