2008-06-01から1ヶ月間の記事一覧

 今月の日経NETWORK(7月号)

それぞれの記事は短いように見えて、通勤の電車で読むと30分で1、2本の記事を読み終わるのが精一杯だ。 "メールの9割がスパム”ってどうやって数えたの?→ おとりアカウント クラウド・コンピューティング→ インターネット先にあるサーバーに処理をしてもらう…

今日の設定メモ

今日やったこと。 準備 ホームディレクトリに.vim/plugin/を作成。 vim 7.1のダウンロード、ビルド、インストール。 NERD_tree.vim (Vimスクリプト)をダウンロードして、.vim/plugin/に置く。 mru.vim(同じくVimスクリプト)をダウンロードして.vim/plugin/…

今日思い立ってやったこと

andLinuxをインストールして、WindowsでDebianを使えるようにした。 vimrcにgvimの設定をいろいろ書いて、こだわりが周りに伝わるようにした。 壁紙を黒っぽく変えた。 なんで急にこんなことをしたかというと、雑誌の記事に影響を受けたから↓(壁紙を変えたの…

プログラミング言語処理系の勉強(その4)

3.1 字句解析のあらまし 言語を構成する最小単位をトークンあるいは字句という。 3.2 正規表現と有限オートマトン アルファベット、文字クラスとは記号の有限集合であり、Σで表す 長さがゼロの記号の列を空列という。ε 正規表現によって決まる言語を正規言語…

プログラミング言語処理系の勉強(その3)

2.2 誤り処理とエラーメッセージ 誤りの処理について大切なことは、誤りを検出してもそこで止まらないで、誤りから復帰(誤り回復)し解析を続行することである(普通のコンパイラは一旦止まるようなよな) 2.3 コンパイラの物理的構造 コンパイラの物理的構…

プログラミング言語処理系の勉強(その2)

岩波講座ソフトウェア科学5 プログラミング言語処理系 2.1 コンパイラの構成(字句解析から再開) トークン(字句)は言語として意味をもつ最小単位 字句解析器は白空白、コメントを除去する(ふむふむ) 正規表現は有限オートマトンに機械的に変換できる(…

プログラミング言語処理系の勉強(その1)

岩波講座ソフトウェア科学5 プログラミング言語処理系 1.1 プログラ厶言語とその処理 JISの用語に従ってプログラミング言語ではなくプログラム言語を用いる(言いにくい) プログラ厶言語の構文については、Algo60以来文脈自由文法やBackus-Naur Formで記述…

改行コードの削除

MS WindowsからLinuxへもってきたアスキーテキストデータがプログラムで読み込めず困った。 改行コードの問題なのだろうと想像はついたが、処理方法がわからず苦労した。WinSCPでファイル転送(Windows→Linux)するときに、明示的にASCIIファイルを指定した…

今日Amazonから届いた

岩波講座 ソフトウェア科学〈〔環境〕5〉プログラミング言語処理系 思ったより分厚く、重い。辞書みたい。持ち運ぶのはとても辛そうだ。 目次 言語処理系とそのなかま コンパイラのあらまし 字句解析 構文解析 意味解析 実行時環境 中間コード生成 コード生…

CPANモジュールを使う

先週末少し休んだだけで、かなりのことを忘れたことに気づく。少しずつでも毎日PCに触ることが自分には必要みたいだ。先週、CGIプログラムを実行しようとしたら、モジュールがないと怒られた。 こんな感じ。 Can't locate HTTP/Response/Encoding.pm in @INC…

良さそうな本を見つけた

Spidering hacks―ウェブ情報ラクラク取得テクニック101選作者: Kevin Hemenway,Tara Calishain,村上雅章出版社/メーカー: オライリー・ジャパン発売日: 2004/05メディア: 単行本購入: 52人 クリック: 904回この商品を含むブログ (104件) を見るCPANモジュー…

CGIプログラミングの準備

うちのVine LinuxでCGIプログラミングの練習をするために、まずはWebサーバの設定を行う。 apache2がすでにインストールされているが、起動はしていない。行った作業は以下の通り。 設定ファイルの編集 /etc/apache2/conf/httpd.confを開く。 ServerName 127…

ファイル削除のスクリプト

複数のファイルを消すのに手間取ってしまったため、メモしておく。 カレントディレクトリのファイルを消す場合 my $fil = 'hoge.txt'; unlink($fil); カレントディレクトリ内のディレクトリにあるファイルを消す場合 $dir = 'dir_name'; $fil = 'hoge.txt'; …

関数型言語を触ってみる(その8)

6章 並列プログラミング(フィボナッチ数を求める関数のところから) concurrent(並列)(parallelではないのか。複数のCPUを使うわけではないのね。だったら並行か...) 自分自身のPidを得るにはself()関数が使える(ほー) メッセージを待機する部分はrecei…

関数型言語を触ってみる(その7)

5章 リストとタプルを使う BIFは組み込み関数のこと listsモジュールのsubtract(List1, List2)、リストから別のリスト要素を減ずる(便利かも。pythonでは何? Erlangは関数型言語です。Erlangを学ぶからには自分で関数を作成できなければなりません(!) …

関数型言語を触ってみる(その6)

4章 関数を作ってみよう(Case式とif式、から) ガードシーケンス以外の条件判断の方法がif式とcase式 ガードはクローズヘッドにつける。if式はクローズボディの中で記述する ifはend.で終わる。末尾にはピリオドを付ける(つけ忘れそう。elseというのはない…

関数型言語を触ってみる(その5)

4章 関数を作ってみよう(続き。関数呼出しとパターンマッチ) |演算子を使えば、リストの先頭要素を残りの部分と分けて表現できる(なに?) 先頭要素を検索する場合:search(X, [X|_]) -> 'Found'; 次の要素を検索する場合:search(X, [_|T]) -> search(X,…

言語処理系の勉強をしようと

以前から探していたのだが、どこの本屋にもなかった本。岩波講座 ソフトウェア科学〈〔環境〕5〉プログラミング言語処理系作者: 佐々政孝出版社/メーカー: 岩波書店発売日: 1989/10/31メディア: 単行本購入: 5人 クリック: 39回この商品を含むブログ (20件) …

関数型言語を触ってみる(その4)

プログラミング言語Erlang入門を読み進める。”Hello World!"すら、まだ正式に書けるようにならない。 たぶん、io:format("Hello World!~n").でよい。 4章 関数を作ってみよう BEAMとは、Erlangプログラムを実行するための仮想マシンです(ほー) モジュール…