作者: 機械伯爵
日時: 2009/4/12(19:14)
 機械す。

> Pythonによらず、入門書のその次という立ち位置のものが壊滅的に見あたらない
> ので、
> ガンガンやってみればいいと思います。

 発破戴きましたので、ガンガンいきます。
 ……まぁ、生活が破綻をきたさない程度に……

> #日記にちょっと書きましたが、ここ3年くらいに刊行されたC関連の本を調べて
> #いたら入門書ばかりでくらくらきました

 2nd bookって、難しいんですよね(需要も微妙だし)

 Pythonの場合、フレームワークの本やライブラリの本はぼちぼち出てますし、
クックブックも出ましたが、文法書が一切無いのが困ったモノなんです。

 まぁ、便利な書き方の紹介とかはクックブックに任せるとして、何をどう「見
做すか」というのは、コードを作る上でかなり重要だと思うんですが、そういっ
た説明が「物の見方」がPythonの場合はかなり不足してます。

 例えばRubyやSmalltalkなんかはオブジェクトって何、とかいうこと抜きでは
ロクなプログラミングができませんので、早いうちにそれを習いますし、Lispや
Haskellで「関数が何?」を知らずにプログラムを行うのはナンセンスです。

 でもPythonで、「オブジェクト」や「呼び出し」についての知識が殆ど無くて
も、プログラムがそこそこ書けてしまうのがやっかいなトコです。

 オブジェクトについての知識が殆ど無くても、C++のプログラムが書けてしま
うのと、似てるかもしれません。

 まぁ、入門時点から怒涛のようにそういった情報を流し込むのは、入門者をお
びえさせるだけなのでやらないとしても、「Pythonってこの程度?」とか思われ
た時に読む本は必要でしょう。

 現在、要素の分類を終えて、リテラルについて書いています。

 いままでリテラルといえば、数値(整数、実数、複素数)と文字列のみを扱っ
ていましたが、私はコレクションやλ式も基本的に含めています。

 文法に含まれていたコレクションの書式や、演算子(あるいは文)扱いだった
lambdaをあえてリテラルとしたのは、文法や式について、出来る限り『原則』を
用いて『構造』を理解できるようにするためです。

 『自家製の用語や分類』の濫用は、出来うる限り最低限度にとどめるべきでし
ょうが、『仕様』ではなく『使用』という視点からざっくりとメスを入れないと、
なかなか理解のベースが出来ないのではないかと思います。

 Pythonの書式は文化混合ですので、「基本は何?」をしっかりと見据えないと、
全体像が見えにくくなってしまいます。

 あと、リテラルの説明のところでは、そのリテラルによって生成されるオブジ
ェクトの説明を、出来るだけしないようにしています。

 これも従来の入門書で、オブジェクトの説明の項にリテラルを含めてしまい、
結果的に後から読みにくくなってしまうことから考えた工夫の一つです。

 まぁ、どっちにせよ、ある程度まとまったところで、例によってココにアップ
しますので、読んでみてください。

 /機械伯爵/
/ホントは密かに書いてる「萌え系入門書」用の資料整理だったことは秘密/