気が付いたらイマーゴ,あと一週間ですよ!
ずっと先だと思って油断していたら,今度の日曜日に迫っていた千駄木イマーゴ。今回はオルガンマニア祭り
をやろうということで,ワタシもSan Juan Sunsetを弾くことになっているのだが。さっきちょっと弾いてみたけど全然ダメ。orz… 😳 😯 わぁぁ〜ん,どうしよう。
このところロビンちゃんの耳コピにいそしんでいたのだが,アドリブの所であえなく挫折。What’s Going Onもレジストその他の問題があり,とても弾けないし。
ずっと先だと思って油断していたら,今度の日曜日に迫っていた千駄木イマーゴ。今回はオルガンマニア祭り
をやろうということで,ワタシもSan Juan Sunsetを弾くことになっているのだが。さっきちょっと弾いてみたけど全然ダメ。orz… 😳 😯 わぁぁ〜ん,どうしよう。
このところロビンちゃんの耳コピにいそしんでいたのだが,アドリブの所であえなく挫折。What’s Going Onもレジストその他の問題があり,とても弾けないし。
PGNとはPortable Game Notationの略で,チェスの棋譜を記録する一般的な記法。PGNViewerはこれを解析して,JavaScriptを用いて棋譜再生を実現している。WordPress用のプラグイン pgnviewer.php は次のようなHTMLを生成して制御をJavaScriptプログラム jsPgnViewer.js に任せる。
[Event "16/11/2007 1:44:40 PM"]
[Site "?"]
[Date "2007.11.16"]
[Round "?"]
[White "Chess Genius"]
[Black "Sukarabe"]
[Result "1-0"]
[ECO "B99"]
1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6
6. Bg5 e6 7. f4 Be7 8. Qf3 Qc7 9. O-O-O Nbd7 10. g4 b5
11. Bxf6 Nxf6 12. g5 Nd7 13. a4 bxa4 14. Nxa4 Bb7
15. Nc3 Rc8 16. Be2 Nc5 17. Rhf1 Nxe4 18. Nxe4 e5
19. fxe5 dxe5 20. Qxf7+ Kd8 21. Ne6+ 1-0
適当に書き直した所もあるが,基本的には,PGNはid付きのdivブロックで囲むことにより JavaScript に渡されるようだ。このブロックはCSSにより表示されないよう設定されている。上の例では id=”9999″ なので,JavaScriptがこれを読めるように,Board(9999, options) と書かれている。JavaScriptはこのようにid付きのブロックの内容にアクセスできる。Board関数はもう一つの引数をもっているが,ここでは駒の画像が置いてあるURLをimagePrefixという名前でJavaScriptに渡している。optionsという引数はこのように連想配列(ハッシュ)になっていて,必要な情報を簡単に渡すことができる。
先日申し込んでいたネットバンキングであるが、銀行から手引き書と共に、第2暗証の台紙(?)と第3暗証のカードが届いた。第2暗証はただの文字列であるが、第3暗証はマトリックス(行列)に数字が書かれている。振り込みなどの際には、その度ごとに、(i,j)成分を入力せよ、とか言われるのであろうか。念の入ったことである。それにしては、ログインは第1暗証のみでできるのは、セキュリティが緩くはないのだろうか。
さてさて、改造したチェス・プラグインの試運転である。携帯電話Nokia N73(SoftBank 705NK)上のChess Geniusとの一戦。まあ、いつも負けているのだが、これは正に惨敗。というか、攻めることばかり考えていて、自陣が詰みになっているのをうっかりしたというお粗末。それは別にしても、シシリアン・ディフェンス、特にナイドルフ・バリエーションの黒番は難しいなあと痛感する。
実は、JavaScriptを勉強しようと思ったきっかけは、WordPressでチェスの棋譜を再生するPlugInであった。PGNViewerというのがそれである。運用例はPGNViewerのサンプルページで見ることができる。
素晴らしいプラグインであるが、画像がいささかショボイことは否めない。サンプルページのコメントを読んでいくと、これを改良した人が居るらしい。画像だけで実際に稼働しているページはないのだが、この位の改造なら自分でもできそうだと思ったのが身の程知らずというか、あさはかであった。
とりあえず、必要な画像と元々のプラグインのソースコードをダウンロードし、解読開始。pgnviewer.js というJavaScriptプログラムがほとんどの作業を行っているのだが、2500行ほどの規模なのである。もっとも、PGNの解析部分と差し手の表示部分は完全に分離されているので、案外と読みやすい。そうではあるが、それでもさすがに苦労した。試行錯誤を経て、駒の画像と思しき部分を変更し、さらに背景色を設定する部分を背景画像に差し替えることでほぼ目的を達成した。これを通して、JavaScriptの文法やオブジェクト処理についても、基本的な事柄を学んだ。もっとも細部まで完全に理解しているわけではなく山勘で改造しているので、多分まずい点があるとは思う。さし当たっては無事に稼働している。
JavaScript初心者としてはまずまずのスタートだと思うが、一つ困ったことがある。実際のHTML&CSS出力がどうなっているのか分からないので、デバッグに困るのだ。何かツールがあると良いのだが。
久し振りにジュンク堂に寄って、コンピュータのフロアに行く。目的はJavaScriptの教科書ないし入門書なのであるが、ついでにあちこち眺める。相変わらずCは一定の領土を確保しているが、我が母国語であるPascalは「その他の言語」としてLispやHaskellなどのマイナー言語たち(いや、Lispをマイナーと言っては申し訳ないが)と一緒に小さくなっている。うーむ、悲しい 🙁
こういう古典的な言語ではなく、今の時代はいわゆるスクリプ言語というものが隆盛を極めている。その中でも最初に流行ったPerlは今も廃れることなく活躍している。このWordPressの記述言語でもあるPHPや日本生まれのRubyというのもある。Rubyと言えば、ちょっと前はまだまだマイナーだと思っていたが、驚くなかれ、おびただしい分量のRubyの本、中でもRuby on Railsの本が出版されている。善悪は別にして、Ruby on Railsは正に旬の言語なのであろう。PHPの方でも負けじとRails流のフレームワークCakePHPの本が出ている。
JavaScriptの本を探しに行ったのだが、存外少ない。JAVAの本なら沢山あるのだが。JavaScriptの本の面白い所は、必ずJavaScriptはJavaとは違う言語であること、JavaScript開発ならびに命名の由来などがけっこう詳しく書かれているところだ。どうやら不幸な生い立ちの言語らしいのであった。ブラウザと一体化して便利そうであるのだが、Microsoftが嫌がらせに互換性のないバージョンJScriptを作ったりと、いろいろあった模様。少ない選択肢の中から、オライリーの本を選んだ。
それにしても、よくぞ作ったというか、いろんな言語があるものだ。門外漢からすると、PerlとRubyなど、さほど違わないように思うのだが。
ただいま本棚整理中。ボレビッチとシャファレビッチ共著の「整数論」2巻本をようやく一緒に並べる。それにしてもこの不揃いなんとかならないか。上巻を買ってしばらくして下巻を買おうとしたときには、既に品切れだった。それから何年経ったろうか。あるとき、オンデマンド印刷とかで復刊していたので購入した。上巻はハードカバーで、しかも箱入り。まあオンデマンドではあるし、ソフトバウンドは仕方ないが、これなら両方ともオンデマンド版で揃えた方がむしろ良いかも。
内容は、代数的数論であるが、p進数や解析的手法を自由に用いていて、ちょっと前の日本の数論の入門書とはかなり異なる印象。Hardy-Wrightを補完するのに丁度良い感じ。もっともHardy-Wrightは間口の広い入門書、こっちは一応は専門書という感じではあるが。
王子駅からJRで帰路に着く予定だったのだが、ふと見ると都電荒川線も通っている。へえ〜と思ってかみさんに言うと、乗ってみたい
とのこと。何と、かみさんまだ乗ったことないんだと。というワタシも2回ぐらいしかないんだけど。ということで、予定を変更。都電で王子駅から大塚駅まで。あとはJRで帰路に着く。
入り口から中に入ると、鬱蒼として良い感じである。都会の喧噪から逃れてと言いたいところだが、実はこの辺りは公園の外でも都会の喧噪とは無縁だったりするが・・・
かみさんの反応が心配だったが、案に相違してなかなか気に入ったみたい。六義園より良いよね〜、と。同感である。まあ、向こうは将軍家側用人、こちらは一介の名主さんで比ぶべくもないけどね。
思ったよりも広く、滝も何カ所かある。一番大きいのは「男滝」と名前が付いている。滝が無くても、これならけっこう楽しめるかなあという印象だった。今日は寒いので早々に退散したが、暖かい日にゆっくりと来るのが良いなあ。
帰りは王子駅へと向かう。王子駅までの道はほぼ一本道で迷うことはない。今度来るなら王子駅からだな。
今日の目的地は名主の滝。近所だし一度来てみたかったのだ。「名主の滝公園」となっているが、どうやら北区が管理しているみたい。