2012-06-01から1ヶ月間の記事一覧
"Descent for Monads" Pieter Hofstra and Federico De Marchi て論文。33ページあったんで、2upで印刷したら字が小さくてヨメン、という不始末。 http://www.tac.mta.ca/tac/volumes/16/24/16-24abs.html pdfは、http://www.tac.mta.ca/tac/volumes/16/24/1…
Catyのレイフィケーションを整備してメタプログラミング環境を作る。そもそも何をレイフィケーションするのか? -- メタレベルにある構造をキチンと定義する必要がある。最近、「メタレベルにある構造」をモグラ(MOGra)という名前で呼ぶことにした。Metaob…
こういう絵になる。NSは名前空間の略称。NSコンテナはいくつかの名前空間を保持する入れ物。NSソートは名前空間の種別。 NSコンテナにNSソート指定=名前空間=束縛セット=置換=コンテキスト 色々な用語が使われているが同じこと。束縛セット(単に束縛と…
(define-generic-mode MODE-NAME ;; 1. コメント文字列の指定 ;; 2. ハイライトするキーワードの指定(シンプルにキーワード文字だけ登録したい場合はここだけでも良い) ;; 3. 個別にハイライトするキーワードとfaceを指定(不要ならnilでも良い) ;; 4. フ…
レイファイドデータ(reified data)といえども、単なるXJSONデータだから、これを加工するのは普通の処理となんら変わらない。が、難しい。ほんとの普通のデータは、そのまま(文字通りに)解釈すればいい。文字列は文字列だし、配列は配列だ。が、レイファ…
{* -*- coding: utf-8 -*- ここにメタスクリプトのコメント 主にコンテキストの意味とか使い方とか *} {* -------------------------------------------------- *} /** ここに生成されたスクリプトに関するdocコメント */ // マクロコード
A : インストール、起動、index.html、静的ファイルを置いてみる。コンソールコマンドを使う。 B : テンプレートファイル、インラインスクリプト/アウトオブラインスクリプト。簡単なアクション。 C : リソースとアクションを使いこなす。 D : コマンドを作…
データ処理としてはカンタンでも、メタプログラミングはやっぱり難しいな。「自分が何をしているか?」をずっと混乱しないで意識し続けるのが疲れる。
gvモジュールを使うとき使っているオプション。 --arrowhead --arrowtail --bgcolor --color --dir --fillcolor --fontcolor --fontname --headlabel --label --peripheries --rankdir --shape --style --width値付き。 --arrowhead=diamond --arrowhead=dot…
http://d.hatena.ne.jp/m-hiyama/20101213/1292201095 から再掲: /** * ランチの注文 */ type LunchOrder = { /** 会員識別情報 */ "ident" : { "name" : string, "memberNum" : integer }, /** 今日の注文 */ "order" : { "mainDish" : ( "special"| "fish…
files.json の例を幾つか挙げる。 { "schemata@global": { "baseDir" : "../../global/schemata/", "files" : ["/webreq.py", "webresp.py"] }, "commands@global": { "baseDir": "../../glbal/commands/", "files": ["/webreq.casm", "/webresp.casm"] } } …
コマンド: netstat -tan -t TCPプロトコル -a INETソケットも表示する(デフォルトではUNIXだけ) -n ホスト名・サービス名でなくて数値で表示 コマンド: fuser -n tcp 80 -n 名前空間を指定する。tcpとか、あとなにかある? fuserの表示 c 指定ディレクト…
http://www.ogis-ri.co.jp/otc/swec/process/am-res/am/artifacts/robustnessDiagram.html にあった図。図のURL: http://www.ogis-ri.co.jp/otc/swec/process/am-res/am/images/models/robustnessDiagramNotation.jpg
配布パッケージに関する概念 X http://d.hatena.ne.jp/m-hiyama-memo/searchdiary?word=%C7%DB%C9%DB%A5%D1%A5%C3%A5%B1%A1%BC%A5%B8%A4%CB%B4%D8%A4%B9%A4%EB%B3%B5%C7%B0 Caty dev のissuから引用: パッケージの仕様とかお約束を決める。この仕様に従うパ…
多ソートメイヤー指標(many-sorted Meyer signature)とは: 状態指標の集合Σ 値指標の集合Φ s∈Σ ごとに、通常のメイヤー指標 (Cσ, Qσ)。クエリーの値はΦから取られる。 s, t∈Σ ごとに T(s, t) という記号の集合。状態のあいだの変換を表す記号。空でもよい…
モノイド関手(monoidal functor)には、厳密(strict)、強(strong)、緩(lax)がある。形容詞がないと、どれを意味するかわからないから、形容詞を付けたほうがいい。
Forvoで調べたら、Lyubashenko はリュバシェンコ。
由来・経緯を省略していきなり天下りに定義すると: |NTND| = |Rel| = |Set| NTND(A, B) := Relstrict,total(A+{⊥}, B+{⊥}) strictの条件は: R(⊥) = {⊥} あるいは、(⊥Ry ⇔ y = ⊥) totalの条件は: ∀x∈A.∃y∈B.xRy Tを三値 {true, false, indef} からなる半環…
有向グラフのラベリングが関手だと書いたことがあるが: 関手の域は、グラフから作った自由圏(パスの圏) 関手の余域は、ラベルから作った圏 ラベルから作った圏Cとは、頂点ラベルがA、辺ラベルがBとして: |C| = A a, b∈A に対して、C(a, b) = B* (ホムセ…
(-)+⊥ を Set→Set の自己関手で付点するモナドだとする。このクライスリ圏は部分写像の圏と圏同値で、アイレンベルグ/ムーア圏は付点集合の圏PtSet。この例では、クライスリ圏とアイレンベルグ/ムーア圏が同値。付点集合の圏に非空ベキ集合関手を作用させ…
「テスト付きクリーネ代数の圏論的な定式化」の簡単な例題の話。罫線付きノートをスキャンするとこうなるなヤッパリ。無地ノートが意外と売ってない。p, qがブール値のクエリー射 p, q:A→B×A (ブール代数を左側にした)として、ブーリアンANDを演算とするモ…
計算処理のモデルに集合圏はチトきびしい。部分写像の圏ならけっこういける。順序とか位相を入れるテもある。関係圏はより自由度が上がる。が、どうも関係圏でも不足な感じがしている。部分写像の圏を点付き集合と点(基点)を保存する写像の圏に直して(圏…