このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

お絵描き圏論を試したい人のために、Catyスナップショットを公開します

CatyScriptの背景は、ボックス&ワイヤー方式のお絵描き圏論です。しかし、Catyで絵が描けるわけじゃなくて、絵は紙の上に手書きしてください。それをCatyコンソールシェルのコマンドラインか、またはスクリプトコードとしてテキスト表現します。テキスト表現が好きな人は、絵のイメージなしでテキストコードを書き下せるかもしれません。

CatyScriptインタプリタ(コンソールシェル)を試したい人のために、現在のCatyのスナップショットを公開します。アーカイブには、WebフレームワークとしてのCatyフルセットが入ってますが、ドキュメンテーションが欠如しているし、Webアプリケーションはまったく含まれていないので、「ソース読め」という状況です。

単なるインタプリタとしての使い方は、比較的近いタイミングでこのブログで説明するつもりです。

スナップショットのアーカイブは次のファイルです。

00Readme.Snapshot.txt の内容:


-*- coding: utf-8 -*- \\
This file contains utf-8 encoded Japanese text.

このソフトウェアは、実装プログラミング言語に依存しないWebアプリケーショ
ン・フレームワーク「Caty (キャティ)」の、Python実装スナップショット版で
す。

この配布は臨時のものであり、リリース番号は付きません。文書その他は、
2010-10-21 pp-1.0.0 のものが更新されないでそのまま残っています。

      • -

ヘルプ情報は help コマンドで表示されます。ただし、文字列データとして出
力されるので、cout (console output)コマンドをパイプして、help | cout
としてください。

helpコマンドの引数に、ワイルドカード文字 '*' を使えます。

* help * | cout
* help *: | cout
* help list:* | cout

----

自分でスキーマモジュール(casmファイル)を作って試すには次のようにしま
す。スキーマモジュールの構文/書き方は、たぶんいつか
[[http://d.hatena.ne.jp/m-hiyama/]] で説明します。

* ディレクトリ main/root/schemata/ の下に <ベース名>.casm というファイ
ルを作ります。
* python stdcaty.py --no-ambient --no-app として起動すると、最小限の組
み込み機能だけを備えたCatyが起動します。
* Catyコンソールシェルのコマンドラインに reload と入力すると、
main/root/schemata/ の下のcasmファイルがロードされます。エラーがある
ようなら、casmファイルを書き換えて、また reload します。なお、reload
の短縮形は l (エル1文字)です。
* ロード時のエラーがなくなったら、casmファイルで定義された型とコマンド
が使えます。