2009-01-01から1年間の記事一覧

実践CommonLispを読むその14

例外処理を越えて:コンディションと再起動 Javaの例外処理をもちっと柔軟にしたシステム。どうも書いてある内容の実用性があまり理解できない。これは本当に必要なんだろうか。個人的にLISPってもちっとLITEな言語だと思ってたよ。オブジェクト指向もそうだ…

実践CommonLispを読むその13

第十八章 FORMATの手習い FORMATって良いよね。と言うか詳しくはわからないけど、使いやすいし理解しやすいと思う。そんなFORMATだが、LOOPと同じように嫌っている人もいるみたいですね。私にはよくわからない話ですよ。FORMATの指示子ってのは、C言語に似て…

実践CommonLispを読むその12

第十六章 オブジェクト指向再入門:総称関数 LISPにオブジェクト指向ってのがある事じたい驚きだよ。LISPでのオブジェクト指向って、どのくらい重要なの?別段、オブジェクト指向で記述しなくともよさそうなものだが、個人的にはリストの扱い方を理解しておけ…

実践CommonLispを読むその11

第十四章 ファイルとファイルI/O ファイルのOPENとCLOSEのお話。 (open "/home/users/file.txt") で簡単オープン。ファイルが存在しない場合の処理をOPEN関数に指示する事もできる。 (let ((in (open "/home/users/file.txt" :if-does-not-exist nil))) (whe…

「Go」をMaxOS Xに入れてみた

既にLinux環境にインストールしてあるので別にインストールする必要はなかったんだが、面白そうなんでやってみた。環境:MacOS 10.5.8LinuxにインストールできたんだからMacも同じだろと思っていたんだが、やられた。まず久しぶりにMacを立ち上げたんでファ…

チュートリアル(Echo)

もう少しGo言語の勉強。てか凄いよねGo言語が発表されて、それ程、日にちが経っていないのにあちこちでGo言語を利用したコードが書かれているし、その中には凄くハイレベルなものもあるし、なんでそこまで理解できているのって感心しております。でちょっと…

PythonもC++も知らないがGoさわってみた

巷で既に噂になっているGoogleが発表した新言語「Go」。なんでもPythonとC、C++の良いとこ取りとか言われているみたいだけどPythonもC、C++も知らないけど面白そうなんでさわってみた。 インストール 忘れないようにメモっとく。多少苦労したかな、環境は下…

実践CommonLispを読むその10

第十三章 リストを越えて:コンスセルの別用途 ここではデータ構造に関して説明している。木構造や集合、ルックアップテーブルの説明木構造はLISPでは一番扱いやすそうだし理解しやすい構造だと思う。他の言語と比較しても一目瞭然だ。ただ階層が深くなるとL…

実践CommonLispを読むその9

第十二章 リスト処理:やつらがLISPと呼ぶ理由 ん〜なんかカッコいいタイトルですね。興味がわきます。というよりもここでやっとLISP入門書では一番最初に書いてある、consやcar、cdrが登場するわけですよ。 関数 利用例 意味 cons (cons 1 2) → (1 . 2) 2つ…

実践CommonLispを読むその8

第九章 実践:ユニットテストフレームワーク テストフレームワークの作り方の説明だね。これはPerlでもテストモジュールを使って便利に作成できるものがあるけど、そんな感じかな。テストフレームワークを作っとくと本体側を修正してもテストが簡単に行え、か…

実践CommonLispを読むその7

第八章 マクロ:自分で定義しよう と言うわけで自分で定義します。本にあったマクロの説明、物語仕立てで説明してあったんだが分かりにくい例えがさっぱり分からなかった。それよりも「マクロの仕事は直接何かを実行するのではなくプログラムコードを作り出…

実践CommonLispを読むその6

第七章 マクロ:標準的な制御構文の構築 ついにマクロですね。LISPの特徴的なものだと聞きかじっているんですけど・・・マクロとはC言語のようなマクロを意味するものや、メイン処理を補助する役目のマクロ等々使う言語によって沢山の意味合いがありますよね…

実践CommonLispを読むその5

第六章 変数 「*」で囲むのをスペシャル変数という。他の言語ではグローバル変数とか言ったりする。 *global* な感じですね。新しい変数を導入する場合「let」を利用する (let ((x 10) (y 5) z) ・・・) xに10を、yに5を束縛する。zにはnilが束縛される。let…

実践CommonLispを読むその4

第五章 関数 (defun name (parameter*) "省略可能なドキュメント" body-form) だそうだ。「defun」で定義したものが関数でしょ。ドキュメントを記述できるのんですね。関数の命名規則がなれないね、下線や大文字ではなくハイフンを使う事。あと、文字列を数…

実践CommonLispを読むその3

第四章 シンタックスとセマンティック 第四章でやっとLISPの文法がでてきた。何故括弧が多いのか・・・本当に多いよね。慣れれば分かりやすくメリットも多いのだろうが、他の言語使用者がLISPを見たら敬遠したくなる理由も分かるよ。 名称 内容 リスト 括弧…

配列について

少しJavaScriptのオブジェクトに関して理解できたと思う。で配列ってのが微妙らしい。基本的に配列の宣言は「var array = [];」で統一しようと思う。どこかで「new」は使わない方がいいって言ってた。何故使わないほうがいいか理解していないのがダメなとこ…

JavaScriptの初歩

最近つくづく思うのだが、JavaScriptの書き方って変わったよね。もうついて行けてないです。やばいくらいに遅れている感じですね。私のJavaScriptは前世紀の手法で遅れまくっていますよね。今までは、 function buttonClick() { alert("Hello!"); } みたいに…

実践CommonLispを読むその2

第三章 実践:簡単なデータベース ここではCDの情報を登録するアプリを通してLISPを学んでいくようです。最初データベースと見て、OracleやMySQL、PostgreSQLを思い浮かべた私は先走りすぎていたようですね。当然のようにテキストベースのDBでした。少し残念…

実践CommonLispを読むその1

Lispを勉強するとプログラミングの手筋がよくなると聞いた。Lisperはエスパーと同じくらい凄い人種だとも聞いた。物凄く興味があるので勉強してみる事にする。くじけず、諦めずゆっくりとやっていければと思う。 第一章 序論:なぜLispなのか? Lispって現在…

mod_perl設定記録

mod_perlも無事インストールできたし今度は設定の方を見て行きたい。設定といってもhttpd.confに追加するだけですけどね。それでmod_perl環境を整えた事になる。最初にCPANよりApacheモジュールに関するファイルをインストールする。 $ cpan cpan > install …

mod_perlインストール記録

以前、mod_perlの環境を構築したので、その思い出を忘れないために記す。ちなみにインストールしたVERSION情報。 app version apache httpd-2.2.11.tar.gz mod_perl mod_perl-2.0-current.tar.gz perl perl-5.10.0.tar.gz mod_perl install $ tar xvfz ./mod…

Perlインストール記録

なんだかんだでPerlを5.8.7から5.10.0にバージョンアップ。CPANよりコードを落としてくる:http://www.cpan.org/ $ tar xvfz perl-5.10.0.tar.gz $ ./Configure -de -Duseshrplib $ make $ make test 「./Configure」のオプションに「-Dusershrplib」を付ける…

Apache2インストール記録

以前、Apache2をインストールしたので、その記録を書いておく。ここからダウンロード:http://httpd.apache.org/download.cgiその後、展開してインストール。 $ tar xzvf httpd-2.2.11.tar.gz $ ./configer --prefix=/usr/local/apache2 $ make # make instal…

Selectをコピーするには?その2

昨日の続きなんだが・・・ $("select").clone().insertAfter(area); と $("select").clone(true).insertAfter(area); の違いなんだが、「clone(true)」とすると複製した物のイベントハンドラまでをも複製できるのだ。これを知らなかったためにずいぶんと苦労…

Selectをコピーするには?

ちょっと今日はjQueryなるものをさわった。何がやりたいかと言うと、HTMLタグのSELECTってのがあるんだが、ボタンを押したら、そのSELECTをOPTIONごとコピーしたい。ってのを作りたいんだわ。いろいろネットを徘徊してたら「clone()」ってのがあり、それがコ…

highslide.jsを使ってみるその4

だいぶhighslide.jsを利用できていると思うので、更なる向上を目指してお試し中。まず縮小画像にマウスポインタを置いたとき、アイコンの形を拡大を表すアイコンに変える。 .highslide { cursor: url(http://file.shinobibloglab.blog.shinobi.jp/zoomin.cur…

highslide.jsを使ってみるその3

highslide.jsで拡大画像をかっこよく見せる事ができた。でね。その拡大画像に注釈を付けたいなと思っている。他のサイトを見たりすると、できているんでやってみる。 <a href="a.jpg" class="highslide" onclick="return hs.expand(this)"> <img src="a_s.jpg" alt="" border=0 title="Click to enlarge"/> </a> <div class="highslide-caption">画像を説明文を書きますよ</div> これでいいはずなんだが・・・

highslide.jsを使ってみるその2

highslide.jsに惚れた!おもしろいね〜簡単に画像の拡大プレビューが作れたよ。ただ拡大プレビュー画面がかっこよくない。というよりも左上に出るhighslide.jsのアドレスが目立ちすぎるだろ。あとはもう少し枠とか付けたいなと思っていた。コメントとかも付…

highslide.jsを使ってみるその1

最近やたらとJavaScriptで遊んでいるんですが、凄いですよね。今まで裏方の処理しか作った事無かったんでprototype.jsやjQuery.jsの存在を知ってから感動しています。もちろん今までにJavaScriptで処理を書いた事はあるんですが、JavaScriptをきちんと書いて…