読者です 読者をやめる 読者になる 読者になる

メモ書き

自分が後で見直すためにつけている作業のメモ書きです.それ以上の意味はありません

Squeak に関する情報源の調査

Squeak とは smalltalk というプログラミング言語の開発・実行環境の実装の一つです.最近,Etoys とか Scratch 等の子供でも使いやすいビジュアルプログラミング環境が教育のために様々なところで利用されていますがそれらは Squeak がベースになっています.どういうことかというと具体的には Scratch は Squeak を用いて作られていたり,Etoys は Squeak のビジュアルプログラミングツール(なので対応する smalltalk プログラムに変換できる)であったりと,そういう関係があるということのようです.

まえがきはここまでにして,ここでは主に Squeak (Etoys や Scratch 関連も含む)に関する情報源をいろいろ調べてみましたので忘備録として列挙してみます.

[Squeak] 開発者が使う Smalltalk 処理系

[Squeak Etoys] 子供向けビジュアルプログラミング環境

  • Debian系の場合は以下のパッケージがあるらしい(まだ未確認)
(etoys) $ sudo apt-get install etoys etoys-doc
(squeak)$ sudo apt-get install squeak-vm squeak-sources3.9 squeak-imge3.9

書籍や資料など

ソフトウェアリポジトリ,サンプル

  • 土曜日はスクイークで
    • 子供にもわかりやすく記述された各種教材が公開されている.
      • 道に沿って
      • じゃんけんぽん
      • ボールをはねかえせ
      • まとあてあそび
      • だんだん遅くなり止まる車輪
      • うみのなかを泳ぐさかな
      • いっしょにつれってって

Tips

  • MTSの Squeak EToys版でイメージを保存するためのワールドメニューの出し方
    • 設定変更による方法
      1. ワールドのハロを出して、上側の白いハロボタンをクリックしてメニューを出す.
      2. 「プリファレンス」メニューを選択し,プリファレンスの画面を出す.
      3. 青い領域に並んでるカテゴリの中から「menus」を選択
      4. escapeKeyProducesMenu という項目をオンにする
      5. そうするとエスケープキーを押すとメニューが出て来るのでそこでイメージ保存できる
    • 既定のショートカットを使う方法
      • Alt+Shift+w を押す.
  • 自分の絵に対するhaloを表示する方法
    • 他の部品の場合と同じく Alt+左クリックで出る.色の付いた部分をAlt+左クリックすることに注意する.細かったり透明な部分のあったりする場合は注意が必要.
  • Etoysのインストーラー作成と配布について
    • インストーラーのソース(svn)
      • 何らかの手段で,配布キットおよびインストールされた結果の上でオリジナル版と派生版の区別がつく
      • 派生版の元になったオリジナルのバージョンが文書になっていること
      • 本家版は,OLPC上で展開することおよびOLPCを含む各プラットフォーム間での互換性を維持することという要件がある
      • したがって日本語版を開発する場合は,派生版を作ったほうが良いかもしれない

その他応用いろいろ

Network

Database

Webアプリ

  • SeasideJOnePlusDB
    • SeasideJOne に自習で役に立つSeasideの解説資料やサンプルコードを同梱したもの
    • GlorpとPostgreSQLを用いたサンプルコードも入っている
  • Seaside Dynamic SVG
    • 継続を使った状態管理をしないのであれば、単にWAEntryPointを継承して handleRequest:をオーバーライドするのも楽
    • RRRssHandlerあたりの実装や使われかたを見ると良い

コラボレーションツールSDK

  • OpenQwag
    • 会議プラットフォームTeleplace をベースにしている
    • Squeak および Croquet をベースにしている
  • Teleplace
    • 3D環境内での telework, オンラインメッセージ,グループコラボレーション,e-learning のための3Dアプリ
  • Cog VM
    • Squeak Smalltalk 向けの新しい高性能 VM
    • 元は Teleplace社(旧 Qwaq社)の製品である同名の仮想空間共有ソフトのベース
    • Croquet用に開発されたものだが,オープンソース化された

Physical Computing

  • 機器制御との親和性について
    • EtoysやScratchのスクリプト(これらはSmalltalkとも異なる)は機器制御との親和性が必ずしも高くない
    • どちらも複数のオブジェクトによる並列動作が前提でリアルタイム性も保証されていない
  • Defart
    • ロボット教育にSqueak(not Etoys)を使った例
    • AIBOカップ用に作られた
    • 状態遷移図ベース
  • Remote Sensors Protocol
    • デバイスを制御するサーバーとScratchがソケット通信する際のプロトコル
    • サーバー側の開発言語に制約はない,Scratch側の変更も不要となる
    • 実装例として Catenary がある

Raspberry Pi

MIDI

ISOイメージ作成