<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>CTMCP / Drkcore</title><link>http://blog.kzfmix.com/CTMCP</link><description>Programming, Music, Snowboarding</description><language>ja</language><lastBuildDate>Sat, 07 Feb 2009 17:46:18 +0919</lastBuildDate><item><title>CTMCP chapter9 終了</title><link>http://blog.kzfmix.com/entry/1233996331</link><description>&lt;p&gt;関係プログラミング&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;パーサの話とかPrologあたり。&lt;/li&gt;
&lt;li&gt;論理的意味は同じだが操作的意味が異なる例が面白かった。&lt;/li&gt;
&lt;li&gt;definite clause grammer (DCG)&lt;/li&gt;
&lt;li&gt;一階述語論理&lt;/li&gt;
&lt;li&gt;Prologプログラムを関係プログラムに翻訳すること&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;残りの章は当分いいや。&lt;/p&gt;
</description><pubDate>Sat, 07 Feb 2009 17:46:18 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter8 終了</title><link>http://blog.kzfmix.com/entry/1233842002</link><description>&lt;p&gt;状態共有並列性&lt;/p&gt;

&lt;p&gt;データベースのACIDとか、そういう並列性の話&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;あんまそそられなかったので流し読み。&lt;/p&gt;
</description><pubDate>Thu, 05 Feb 2009 22:55:27 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter7 終了</title><link>http://blog.kzfmix.com/entry/1233750059</link><description>&lt;p&gt;オブジェクト指向プログラミング&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;転嫁と委任&lt;/li&gt;
&lt;li&gt;メタオブジェクトプロトコル&lt;/li&gt;
&lt;li&gt;継承と高階プログラミングの関連性&lt;/li&gt;
&lt;/ul&gt;
</description><pubDate>Wed, 04 Feb 2009 21:21:21 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter6 終了</title><link>http://blog.kzfmix.com/entry/1233448620</link><description>&lt;p&gt;明示的状態&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;状態とは、必要とされる計算の途中結果を含む、値の時系列である。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Prologを少しなぞれば宣言的なプログラミング言語の理解が深まるし、Cutを使うと宣言性が失われることがあるっていうの理解できた。&lt;/p&gt;

&lt;p&gt;でも、かなり理解不能な部分が多かったかも。&lt;/p&gt;
</description><pubDate>Sun, 01 Feb 2009 09:37:16 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter5 終了</title><link>http://blog.kzfmix.com/entry/1231250721</link><description>&lt;p&gt;メッセージ伝達並列性&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;メッセージ伝達並列モデルは宣言的並列モデルに非同期通信チャンネルという概念を付加したもので、このモデルは非決定性である&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;最後のほうにerlangの簡単な説明の節があったが、erlangは触ったことないのでとりあえず&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;sudo port install erlang
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;してみた。後で時間があったら触ってみたいところ。&lt;/p&gt;

&lt;p&gt;あまり並列処理をガンガンまわすということはやってないので、いまいち興味が、、、、というわけだったので、少し読み飛ばした。&lt;/p&gt;
</description><pubDate>Tue, 06 Jan 2009 23:06:05 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter4 終了</title><link>http://blog.kzfmix.com/entry/1231163601</link><description>&lt;p&gt;宣言的並列性に関して&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;エラトステネスの篩をthreadを使って&lt;/li&gt;
&lt;li&gt;性急実行も遅延実行も有界バッファの極端な場合にすぎない。バッファの大きさを無限大にすれば性急実行でゼロにすれば遅延実行&lt;/li&gt;
&lt;li&gt;&lt;a href="http://itpro.nikkeibp.co.jp/members/ITPro/ITBASIC/20021016/1/"&gt;ラッチ回路&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;順序決定並列性
&lt;ul&gt;
&lt;li&gt;データフロー実行&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;現実世界は宣言的ではない&lt;/li&gt;
&lt;li&gt;典型的なErlang抽象として関数が他言語で書かれた宣言的プログラムを、状態あり、並列でフォールトトレラントのプログラムにするものがある。&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;データフロー変数ってのがなんだか面白そうだったのでググったら&lt;a href="http://d.hatena.ne.jp/mzp/20080120/dataflow"&gt;みずぴー日記の方がOCamlでやってた&lt;/a&gt;。さらにコメント欄が参考になった。&lt;/p&gt;

&lt;p&gt;perlだと&lt;a href="http://search.cpan.org/perldoc?threads::shared"&gt;threads::shared&lt;/a&gt;とかで変数を共有しといてundefじゃなくなるのを監視してれば未束縛の変数っぽい振る舞いをさせることができんのかな。pythonは全然わからん。&lt;/p&gt;
</description><pubDate>Mon, 05 Jan 2009 23:09:16 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter3 終了</title><link>http://blog.kzfmix.com/entry/1230987437</link><description>&lt;p&gt;3章の宣言的プログラミング技法を終了。&lt;a href="http://www.geocities.jp/m_hiroi/prolog/prolog04.html"&gt;差分リスト&lt;/a&gt;のあたりでトラップされたが、なんとか抜け出し先に進んだ。とはいえ、きちんと理解しているわけではない。&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;型をなぞってプログラムを構成する&lt;/li&gt;
&lt;li&gt;高階プログラミングとは
&lt;ul&gt;
&lt;li&gt;全ての引数が手続きでない手続きを一階という&lt;/li&gt;
&lt;li&gt;高階とは手続きが何階でもいいこと&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;閉包とは手続き値&lt;/li&gt;
&lt;/ul&gt;
</description><pubDate>Sat, 03 Jan 2009 21:57:48 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter2 終了</title><link>http://blog.kzfmix.com/entry/1223550811</link><description>&lt;p&gt;メモリライフサイクルと例外が面白かった。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;メモリライフサイクル&lt;/li&gt;
&lt;li&gt;核言語&lt;/li&gt;
&lt;li&gt;例外&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;宣言的モデルに二つの制限をおいて純粋関数型言語を定義できる&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;変数を宣言するとき、ただちに値に束縛する&lt;/li&gt;
&lt;li&gt;手続きでなく関数だけを使う&lt;/li&gt;
&lt;/ul&gt;
</description><pubDate>Thu, 09 Oct 2008 20:13:49 +0919</pubDate><category>CTMCP</category></item><item><title>CTMCP chapter2</title><link>http://blog.kzfmix.com/entry/1222088309</link><description>&lt;p&gt;風邪がひどくて、日本酒というかお酒を飲む気がおきないので、やたらと勉強する気力が高まっている。というわけで、誕生日祝いということで&lt;a href="http://blog.kzfmix.com/entry/1195823315"&gt;一年くらい前に購入した&lt;/a&gt;ガウディ本を読み始めているが、これがやたらと面白い。僕にはさくさく読み進める感じじゃないのでゆっくりと読んでるけど。&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798113468/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/51iXhiKTamL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi &lt;br /&gt;
翔泳社 / ￥ 8,610 ()&lt;br /&gt;
通常24時間以内に発送&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;2章で得られる感覚はレビューにあるように&lt;strong&gt;パズルのピースが次々とはまっていくような感覚&lt;/strong&gt;ですな。&lt;/p&gt;

&lt;h3&gt;2.2.5 識別子を使う値生成&lt;/h3&gt;

&lt;blockquote&gt;
  &lt;p&gt;束縛された変数のリンクを辿って値を得ることを参照剥がし(dereference)という。これはプログラマには見えない。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;perlではなじみの深い操作。pythonでは多分見えない(見る方法あるんだろうか)。普段は見えなくてもいいけど、こういうこと知っていると変数の生死とか色々分かっていいような気がする。&lt;/p&gt;

&lt;p&gt;perlとはそういう言語なんだなぁと、春のYAPCの&lt;a href="http://www.dan.co.jp/~dankogai/yapcasia2008/psl.html"&gt;dankogaiさんのスライド(p.29)&lt;/a&gt;を思い浮かべた。&lt;/p&gt;

&lt;h3&gt;2.3.3 基本形&lt;/h3&gt;

&lt;p&gt;タプルはフィールドが1から始まる連続変数であるリスト。あーだから並びが一意に決まるんだと妙に納得。pythonのタプルって実のところよくわからなかったので。pythonの実装もそうなっているのだろうか?あとで調べてみよう。&lt;/p&gt;

&lt;p&gt;そういえば&lt;a href="http://blog.kzfmix.com/entry/1196589147"&gt;MAWP&lt;/a&gt;で集合を扱う時にhashのキー値だけを扱う実装にしてたけど、hash,list,tupleの関係って実際どうなっているんだろうか?なんてことにも興味が湧いてきた。&lt;/p&gt;
</description><pubDate>Tue, 23 Sep 2008 19:57:45 +0919</pubDate><category>CTMCP</category></item></channel></rss>