too late amatuar programmer

pythonによる関数型プログラミング:参考情報

2010-06-28 by ebon | Lavel: 0 comment

解説系


Functional Programming HOWTO

魅力的なPython: Pythonでの関数プログラミング
2回,3回まである.

Functional programming with Python
map,filter,reduce,等基本的なfunctionalスタイル関数の解説.

Higher Order Perl (Python Style) TOC
あのperlの評価の高いHOPをpythonで。awesome!。。

perl版については、見た目は荘厳なものの、以外と、
・問題が身近・実用的で読みやすい
・sample codeが段階的に肉付けしていっているため,読みやすいいじりやすい
という点がある。
ろくに書けない状態で読みはじめた私でも、読み進めることができた.
(もちろん、全て読んだわけでなく,章によっては現状理解できない。
内容を消化出来てる訳では全くない・・)
でも楽しんで読めるだけでも嬉しい。
それのpython版!!

module系


itertools — 効率的なループ実行のためのイテレータ生成関数
functools — 高階関数と呼び出し可能オブジェクトの操作
標準module.

functional
functional : foldl, foldr, flipなど関数型プログラミングで主要な関数を集めたモジュール
haskell でいうprereudにあたる関数群のモジュールのよう.
C + python で書かれているものと pure python で書かれているものがある.
module:functool, にない関数がカバーされている?
このpureの方をreadingすれば、関数型pythonの基本が身につくかも.

読み物系


Lisp プログラマのための Python 入門

LispとPythonのビミョーな関係
Paul Graham氏が絡んでいるpython関連のエッセイがまとめられている.

Pythonの"関数型"の機能の起源

[reading log] Corders at work

2010-06-26 by ebon | Lavel: 0 comment

Coders at Workを読んだ.

著名なプログラマーによる著名なプログラマーへの,
プログラミングに関するインタビュー集といった内容.
実録!天才プログラマー が面白かったので、同系統で期待できると思い、購入。

インタビューアーは実 践Common Lispの著者,
答え手は,
Guy Steele(Schemeの共同開発者),
の主要設計者),
Peter Norvig(実 用 Common Lispの著者で現在G
Simon Peyton Jones(haskellの共同開発者,GHCoogleの研究者),
Dan Ingalls(smalltalkの設計者),
Donald Knuth,
他多数..
と誉れ高い方ばかりのようで名前だけでテンションが上がる.

インタビュー形式で、以下のような質問中心に話が進む.

  • 何からプログラミングを始めた?
  • どうやってプログラミングを学んだ?
  • 公式な教育を受けることは重要?
  • いいプログラマーの条件とは?
  • どの言語は優れていて、どの言語がひどいもの?
  • プログラミングスキルを延ばすために、他に必要なスキルは何?
  • コーディングするときのアプローチはトップダウン or ボトムアップ?
  • 他のプログラマーを協業するときの良い方法は?

etc... ここに挙げたのはあくまで一例で、他にも多種多様なプログラミングに関する質問.

勿論、あらかじめ用意している同じ質問を全ての人物にしている訳ではない.
それぞれの答え手に沿って会話が進むよう,準備に大きな労力を払っていると思われる濃さだ.

哲学的な事からツールの使い方まで、
多くのプログラマーが気になるであろう質問を次々と繰り出している.
同時にインタビューアーが優れたプログラマーであるためか、
答え手も能弁、本音が素直に出ているようで、非常に刺激的な会話が続いている.

一人分が、約40ページある.結構な量だと思う.
答えてのターンが、2ページ弱に渡っていることなどもある、
なかなか見られない量であり、ただのインタビュー/回答とは違う.
どんなレベルの方が読んでも参考になるような、考え方・方法論・哲学が詰まっていると思う.

pythonによるシステム管理:参考情報

2010-06-23 by ebon | Lavel: 0 comment

perlを置き換えたい ≒ pythonでシステム管理 / 書き捨てプログラム
という状況に近い. なので、システム管理周りの情報をひとまず収集.

本当はミニマルPythonがあるといいんだけどな・・(Perl版
という程度がひとまずの自分のニーズ.ごく小さなスクリプトを書く目的.

何事も小さな事からということで、以下を参考にしつつ書き出していきたい.

Python for Bash scripters
これは shellscript or perl scrip
t を置き変えたい人に取っては直球ど真ん中!?

Pythonメモ
scripting時に必要になりそうな最低限の情報がシンプルにまとまってる.
書き始め時に参考にしたい.

システム管理者のための Python
こういう情報が英語圏ではかなり充実しているのか

python in system administration
スライド資料.なぜにchinaの表紙絵??w
情報量は少ない.
vs C, vs bash, vs python のメリットデメリットがあって少しおもしろい.

Python One-Liner of the Month
one liner については不安がある.
perlの一行野郎に比べると、どうしても記述の容易さの面で劣るという先入観がある.
実際どうなんでしょう. 例集が多いと今後
助かるんですが..
ruby,pythonの一行野郎の情報をあまり見たことないな・・・

PerlユーザのためのPython移行ガイド
まさにPerlを置き換えるという内容.どんぴしゃの内容なのか?パラパラ読んでみたい.

python触り始め

by ebon | Lavel: 0 comment

pythonを始めることにした.
使用目的は、日常業務scriptingがメインで,他いろいろ.
直近で言えば,perlの置き換えが目的.

なぜperlを置き換えるかと言うと、以下のような雑多な理由である.

  •     違う言語を触りたい
  •     perlでダラダラ書いていて,堅牢性(ロバストネス?)の点から不安を覚えた
  •     docment, あるいはcode と document を同時に作成するツール・文化が充実している; perlよりもrubyよりも.

正直言って、ちょっとしたスクリプティングの他候補になる言語、
perl,ruby,gauche と比較した時、pythonについてはコンセプト的に最も惹かれない.

gaucheとの比較について
ほんとうは gauche,scsh sheme系で置き換えたかった.
でもスキル不足やメンテナンス性のことを考えると現実的に厳しい...

rubyとの比較について
”pythonの方が関数型思考によりフィットする”
という風説に影響され、pythonをとった.

pythonを始めるにあたってのサイト集

2010-06-14 by ebon | Lavel: 0 comment

つい情報収集にはまってしまう癖があるので、
始め段階ではまっておく.
主に、python初級~中級くらいに参考にしたいサイトのまとめ.

入門の入門


Pythonを始めよう。
python入門まとめサイト
この辺りを参考にさせてもらえば大体、事足りそう。。

python早めぐり
あの、もうひとつのscheme入門を書いている方のpython記事.
schemeが非常に分かりやすかったので!,こちらも期待です.

インスタントPython

おもむろに始めようと思ったとき、これらの情報はとても有難いです。

pythonを始めるにあたってのインストールメモ

2010-06-13 by ebon | Lavel: 0 comment

pythonを始めるにあたってのインストールメモと問題をログ.


とりあえずpython-modeがあれば満足する.
emacserとしては、
・emacs + バッファ読み込み・実行
という基本所作ができれば、最低限気持ちよくコーディングできる.

python/python-mode は、Mac (corbon emacs)だとdefaultだった.
ということで、少し進めて、IDE的な環境の実現を目指す.


ここらあたりの記事を、横断的に参考にさせていただいてなんとかsetup開始

Setup Perfect Python Environment In Emacs

python in Emacs環境

pymacs