«前の日記(2005-01-13(Thu)) 最新 次の日記(2005-01-17(Mon))» 編集
RSS feed
Webサイトとは「つい、うっかりの存在論」である

角谷HTML化計画

「むずかしく考えることはない」と、偉そうに葉巻を振りまわしながら、トレヴィラヌスはいった。「ガリラヤの太守がじつにみごとなサファイアを持っていることは、みんなが知っている。何者かがそれを盗むつもりで、間違ってここへ入ったんだ。ヤルモリンスキーが起きていたので、泥棒は殺さざるをえなかった。どうだね、これで?」
「そのとおりかもしれません。しかし、おもしろくはないですね」と、レンロットは答えた。
J.L.ボルヘス『死とコンパス』(『伝奇集』収録)

2005-01-14(Fri) [長年日記]

■1 完全版水木しげる伝(下) (講談社漫画文庫)(水木 しげる) 『完全版 水木しげる伝(下)戦後編』

上中巻に比べるとすさまじく駆け足なのが少し寂しい。が、それよりもこれをもって本作は完結、もう続きを読めない。もっと寂しい。ガブーッ!!

■2 「JavaよりもずっとAgileでFlexible」で「『Javaアプリケーションのスクリプティング』の標準的言語の地位を確立している」言語で記述した経験を告白します

某maven.xml

ゆえあって、2のファイルのタイムスタンプをビルド時に比較しなければならなくなった。ちょっとした好奇心から試してみたらできてしまったんです。ごめんなさい。

<project xmlns:j="jelly:core" xmlns:u="jelly:util" ...>
  <goal name="checkTimestamp">
     <!-- ファイルのフルパスを取得 -->
    <j:set var="some.file.path" value="${basedir}/${some.file.name}" />
    <j:set var="another.file.path" value="${basedir}/${another.file.name}" />

    <!--  java.io.Fileのインスタンスを生成 -->
    <u:file var="someFile" name="${some.file.path}" />
    <u:file var="anotherFile" name="${another.file.path}" />

    <!-- Fileのタイムスタンプをlongで取得 -->
    <j:set var="someFileLm" value="${someFile.lastModified()}" />
    <j:set var="anotherFileLm" value="${anotherFile.lastModified()}" />

    <!-- Fileのタイムスタンプを示すjava.util.Dateを生成 -->
    <j:new var="someFileLmDate" className="java.util.Date" />
    <j:setProperties object="${someFileLmDate}" time="${someFileLm}" />

    <j:new var="anotherFileLmDate" className="java.util.Date" />
    <j:setProperties object="${anotherFileLmDate}" time="${anotherFileLm}" />

    <!-- 2つのDateを比較(なんかJEXLでlt演算がうまくでけない) -->
    <j:if test="${anotherFileLmDate.before(someFileLmDate)}">
      <fail message="FILE TIMESTAMP ERRROR: ..."/>
    </j:if>
  </goal>
  ....
</project>

Maven使ってると<jelly:forEach>とか<jelly:if>とかフツウに使うとはいえ、<jelly:new>に初めて遭遇したときは改めてオドロキを受けた。

でもまあ、buzzwordの潮流はこっちなんですよね? 不勉強なのでよく知らないのですが。

■3 丸山先生レクチャーシリーズ 第3回@2005/01/28

申し込んでみた。デブサミ2005で参加するコマはあといくつか埋めれば完成予定。


«前の日記(2005-01-13(Thu)) 最新 次の日記(2005-01-17(Mon))» 編集
RSS feed