nDiki : 1999年01月中旬
1999年1月19日 (火)
■ 昨日友人が東芝 Satellite 2520 を購入

いきなり昨日の話。本日誌は今日からだからご愛敬。
昨日、友人のノートパソコン購入に同行。 日曜日にいって ThinkPad i Series が欲しかったらしいが、生産終了の札ばかりで、品物がなかったらしい。 6時間も歩いたとのこと。
結局、昨日 東芝 DynaBook Satellite 2520を購入。 東芝を薦めたのは私の好みによるところが大きい(笑)。
個人的にはオールインワンは大きくて好みではないのであるが、初心者にはやはり便利であろう。 本人も内蔵モデルを希望していた。 内蔵されている CD-ROM ドライブに CD-ROM をいれている姿をみると、やっぱりPC カードを挿してどうのというよりは楽だねと感じる。 でも CD-ROM ドライブ、薄いだけあってなんかちょっと力をいれるとバキッといきそう。 壊れても内蔵はリプレースするのが大変なんだよね。
パッケージを開けて気がついたのだが、このモデル内蔵モデムがないのね。 てっきりあると思っていた。 この友人クレジットカードをもっていないので、今日済ませてしまう予定だった(勝手に私が考えていただけ?)ISP へのオンラインサインアップどのみちできなかった。 うーん、とりあえず余っている PC カードモデムかしてあげたほうがいいかな?
- はじめての iTunes (2006-01-14)
- ワイヤレスLAN 802.11a/b/g Mini-PCI カード 31P... (2004-11-26)
- iPod 用に USB 2.0 インタフェース PC カード購入 (2006-01-20)
- [ Debian ] CD -> MP3 (2003-12-13)
- 納品前日なのに /var が壊れた! HDDからのブートで Debian ... (2005-09-27)
■ なぜこの日誌を始めるのか

- 知人の日記ページをみて楽しいから。
- でも、プライベートは話は書きたくないし、
- でも、計算機ネタで書きたいことはある。
- それなら誰か役にたつかもしれない。
- それに困った事を書いておけば誰かコメントしてくれるかもしれない。
- あと、内容まとまったらその部分をページのネタにできるから。
果たして長続きするだろうか。
[ コンピュータ日誌 ]
- 日記みました (1999-01-22)
- はいぱー日記システムで日記を開始 (2001-05-11)
- 01:30 日記開始 (2001-05-11)
- [ 花粉症 ] 花粉アレルギー対策に診療所へ (2004-02-06)
- 12:50 インタビューお姉さん再襲 (2001-11-26)
■ mirror-2.9, put の chmod 不具合

WWW ページ管理の仕事で mirror 2.9 を利用しているのだが、いままでアップロード(put)時にサーバ側で chmod がうまくできないでいた。 相手 FTP サーバは FTP server (Version wu-2.4(7) Tue Jun 9 21:37:03 JST 1998)。 ftp で chmod すると
501 CHMOD: Mode value must be between 0 and 0777
というエラーになってしまう。 どうやら Perl の関数でローカルのファイルの mode を取得した時のものをそのまま送ってしまっているのが問題のようだ。
mirror の 3419行目
# Convert from octal # Suggested patch to limit bits being set # $mode = $mode & 0777; ここ!
のコメントマークを外して有効にすると chmod 成功するようになった。
- Twitter のアイコンを Perl スクリプトで更新する (改) (2009-03-20)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- CGI プログラム、Out of memory! に泣く (2001-01-04)
- ホームページ・ビルダーのサイト転送を secure に (2002-04-16)
- はいぱー日記システムで日記を開始 (2001-05-11)
1999年1月20日 (水)
■ Squid-2.1.RELEASE-src.tar.gz へ更新

自機 Linux on PORTEGE 7010CT の Squid を Squid 2.0/PATCH 2 から更新。
$tar zxvf squid-2.1.RELEASE-src-tar.gz $cd squid-2.1.RELEASE $./configure --prefix=/usr/local/squid $make all #su #mv /usr/local/squid /usr/local/squid-old #make install #rm /usr/local/squid/etc/squid.conf #ln -s /etc/squid.conf /usr/local/squid/etc/squid.conf #cp /usr/local/squid/bin/RunCache /usr/local/squid/bin/RunCache.original #cp /usr/local/squid-old/bin/RunCache /usr/local/squid/bin #mkdir /usr/local/squid/cgi-bin #cp /usr/local/squid/bin/cachemgr.cgi /usr/local/squid/cgi-bin
squid.conf は /etc/squid.confにおくようにしている。 また RunCache で起動すると DNS のチェックを行うのだが、これだとネットワーク未接続時に DNS が接続できずエラーになってしまう。 ノート PC では、ネットワークに接続していないこともあるのでこれは困る。 ので、同スクリプト中の squid の呼び出しに -D オプションを追加している。 また logdir を /var/squid にし squid.outを同ディレクトリに出力するようにしている。
また既に前のインストール時に、
#mkdir -p /var/squid/logs #chown -R nobody:nogroup /var/squid
などの設定が済んでいる。また Apache の設定として srm.conf に
ScriptAlias /Squid/cgi-bin/ /usr/local/squid/cgi-bin/
を追加し、access.conf に
<Location /Squid/cgi-bin/cachemgr.cgi> order deny,allow deny from all allow from localhost </Location>
- Apache でミラー proxy (2002-04-17)
- 今日のさえずり - 餞別用意したけど最終日の今日来なかった (2009-06-15)
- 今日のさえずり - 4C-0.4 芯って予想以上に細い (2008-02-21)
- Debian に RSS リーダ「フレッシュリーダー」をインストール (2006-03-06)
- Evernote 使用開始 (2009-03-03)
■ Perl で lex/yacc

最近 Perl で字句解析ルーチン生成系/構文解析ルーチン生成系を作ろうかな、などと考えている。 前にもやろうと思っていたのだが、なにもしていなかった。なぜ Perl でかというと、
- C/C++言語にはすでに存在する(flex/bison)。
- Perl にはいいものが存在しない(知らない)。
- flex/bison はC/C++のものしか生成できない。
- これは動的に生成し利用すること、また動的に変更することが考慮されていない。
- Perl なら実行時にサブルーチン定義したり eval できたりする。
- Perl なら気が楽。
などが理由であろうか。 また自分の研究で設計している言語を Scheme 上で実装しようかなと思っているが、その字句解析ルーチン生成系/構文解析ルーチン生成系が欲しい(あることにはあるが)。 一旦 Perl で生成系を自作しておけば、簡単に他の言語の解析ルーチンを生成できるように拡張できるであろう(と考えたい)。
動的な側面が念頭にあるのは、自分の研究がそういうことをやっているから。
とりあえず lex/yacc(flex/bison)互換/ライクなものを作る予定である。 これらはそれぞれ仕様記述のファイルを読み込んで解析ルーチン(解析用テーブル)を生成する。 ので、とうぜんこの仕様記述言語の字句解析ルーチン/構文解析ルーチンが必要である。 手で書いてもいいのだが、それも面倒だ。 当然字句解析ルーチン/構文解析ルーチン生成系が欲しい。 しかしまだない。 これから作ろうとしているものそのものだから。
方法としては、
- Perl で手書きで解析ルーチンを作る。それで Perl 用生成系の仕様記述を読ませて、置き換える。
- Perl の既存の生成系を使う。
- flex/bison を使って C/C++ 版を作成。その後その生成系で Perl 用生成系の仕様記述を読ませる。
などが考えられる。今回はとりあえず一番最後の方法をとろうと思う。 ただし実際には完全に C/C++ で作るのではなく、字句解析/構文解析ルーチンを flex/bison で生成し、それを Perlエクステンションとして、Perl から呼べるようにすることにする。こうしておけば、
とすることができる。最初のものを全部 C/C++ で書くと、解析ルーチン生成部を C/C++ と Perl で2回書かなければならないが、この方法ならその部分は Perl で書いておけるので2度手間にならないであろう。
ということ一昨日は flex のコードを眺めて、昨日は Perl エクステンションの書き方を調べてみている。 flex で吐いたファイルをそのまま Perl エクステンションのコードとは当然できないので、そのトランスレータをまず作ることする。
- Twitter ベイジアンフィルタプロキシ (2007-12-29)
- PerlでScheme実装 (2004-08-13)
- 久しぶりの C++ は GNU Automake + CppUnit で (2009-03-13)
- ハッシュとは (2004-06-09)
- 新入社員 (2004-04-16)
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.012963s / load averages: 0.34, 0.14, 0.10
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)




■ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。
■ Google Buzz はよろしければ Naney の Google プロフィールからどうぞ。