«前の日(01-05) 最新 次の日(01-07)» 追記

Matzにっき


2004年01月06日

_ [生活]体調不良

急に寒くなったせいか、昨日あたりから体調が悪く、寒気がしたり、鼻炎が悪化したりしたので自宅作業。

とはいえ、今は子供たちも冬休みなので、作業がはかどらない。 家族全員で引きこもり状態。 結局仕事もたいして進まないし。

これではいくらなんでもいかんだろうと、夜は温泉にでかける。 結構寒いのね。

_ [Ruby]M17N

で、仕事が進まないなりにRuby M17Nについて考えていたのだが、CHISEあたりをヒントに

  • 整数で文字を表すのはやめる
  • 文字も文字列も二つの文字列ポインタ(始端と終端)で表現
  • 文字に対する操作はその文字列の「最初の文字」が対象になる
  • 文字に対する操作は基本的にその文字の属性の取得
  • 文字列に対する操作は(一部を除き)文字に対する操作で記述したものをfall backとして用意

という方針でなんとかなるのではないかと考える。 これだと、たとえば「文字=コードポイント」という仮定もないのでより広い範囲で対応できるだろう。 ステートフルなエンコーディングにはいずれにせよ対応できないけど(効率上の問題であきらめた方が良さそう)。

もっとも、これだと以前作ったもの(ruby_m17nブランチ)の実装はほとんど流用できないなあ。

課題は

  • 正規表現エンジンはどうするか。鬼車は独自のencoding対応が入っちゃってるし。
  • 不正なバイト列にどう対処するか

だな。特に前者。 エンジンの自作はできれば避けたいけど、鬼車をフォークするってのもなあ。


2005年01月06日

_ [Ruby]Playing with Ruby

Jakarta TapestryとHiveMindの作者であるHoward Lewisが、 Dave Thomasの強い勧めに従ってRubyを使ってみたら思ったより良くてびっくり、という話。

興味深いのは以下の点。

  • 一流のプログラマであると見受けられるHoward Lewisにしても、 実際に使ってみるまでは言語の良さは分からないということ
  • 一般に言われているのと異なり、Rubyが(Pythonより)高速であると述べていること。
  • 彼は以前「偉大なハッカーはJavaを使う」と発言しているのだが、その内容は一部訂正する必要があるかもと述べていること

気になる速度については以下のように述べている。

My trembling first journey into Ruby is this script, which does the work. It's sloppy, doesn't report errors well, and took me too long to write (almost as long as it would have in Java!) ... but it works and is impressively fast. In fact, I've been very surprised at just how fast Ruby is to load, parse and execute. Visibly faster than Python ... faster than Java I'd bet.

「PythonよりもJavaよりも速い」んですか。それはめでたい。でも、なんでだろう?

_ [言語]The Evolution of an Extension Language: A History of Lua

ブラジル生まれのスクリプト言語Luaの歴史。

元々はデータエントリのための言語だったんだ。初耳。

_ [特許]MS、ソフトのコンパイル・編集に関する特許を取得

うう、また変な特許が。ITmediaの記事が正しいとしたら、この特許は

USPTOの要約では、同特許は「共通のライブラリを使用する複数のソース言語のファイルをコンパイルする方法とシステム」と説明されている。

USPTOの要約には、「本発明はソース言語コンパイラ技術に関連しており、特に、ランタイム環境で実行される実行可能プログラムやアプリケーションの作成に使われるソース言語から独立したランタイムライブラリおよび環境を作成するためのコンパイラの使用に関連している」と記載されている。

なのだそうだ。これのどこに新規性が。


2006年01月06日

_ PC修理

IBM スマートセンター(0120-20-5550)に電話して修理を手配する。 レノボになってもまだ「IBMスマートセンター」なのね。 クーリエサービスの引き取りは(月曜が休みなので)火曜日10日になるそうだ。 しかも、そこから10日から2週間、費用は6万弱かかりそうだ。痛い。

しかし、5550って日本IBMのふっるーいマシンの型番じゃなかったっけ。 IBM PCとか出てくるよりずっと前の。こんな形で歴史に跡を留めるとは。


2007年01月06日

_ スケート

娘二人と教会の人とでスケートに行く。 総勢17名。

本当にひさしぶりだったが、 まあ、転ばない程度に滑れた。 ただ、子供の時、ローラースケートから始めたから 姿勢が悪いんだよねえ(いや、ローラースケートのせいじゃないだろうな)。

ひとり全く滑れない小学生がいたけれど、 最初泣きそうだったけど、意外と(?)根性を見せて、 最後にはだいぶ上手になっていた。 シーズン中もう何度か来れたら結構滑れるようになると思うんだけど。

ともあれ、そんなに長い時間ではなかったが、 大変楽しかった。後で筋肉痛になりそう。

_ 年賀状問題

まだ、ぽつぽつと年賀状が届く。 その中で一通困ったものが。

  • 表面は私たちの住所と夫婦の名前
  • ただし住所は2年前の引っ越し以前のもの
  • 裏面は完全に白紙

誰から来たのか分からないし。

たぶん、プリンターに同時に二枚フィードされちゃったんだろうなあ。 ちゃんとチェックしないとこういうことになる。

心当たりの人がいたらメールください。

_ [原稿] るびま特別編

青木さんが、るびまの添削連載をまとめて本にするという話。

コラムを依頼されていたのだが、〆切を守れないでいるうちに 真の〆切が来てしまった。大慌てで書くのだが、 風呂敷を広げすぎて、畳むのに苦労する。 なんとか月曜日には仕上げたいのだが。

_ [Ruby] eigenclass.org Happy 2007! Ruby mini-contest

挑戦者を待つ。

_ [言語] Origin of Programming Language Names

プログラミング言語名の起源。

有名なのばっかりだけど、 マイナーなものも含めて調べてみると面白いかも。

クイズ: 以下の言語の名前の起源は?

  • CLU
  • Eiffel
  • Prolog
  • Haskell
  • OCaml

追記(2006-01-16)

木村さんのところで回答が。

正解を載せておきます。

  • CLU - CLUsterから。クラスターはCLUにおける抽象データ型表現の名前です
  • Eiffel - エッフェル塔に気がついたのは惜しい。エッフェル塔の設計者 Gustave Eiffelから。Meyerはこの方を尊敬しているそうです
  • Prolog - Program in Logic。正解
  • Haskell - 数学者Haskell Curryから。Curryが名字です
  • OCaml - Objective Camlです。正解。ちなみにCamlは、Categorical Abstract Machine Languageの略だそうです

_ [言語] 第4回 関数型言語とオブジェクト指向,およびOCamlの「O」について

ITProの住井さんの連載。 オブジェクト指向と関数型は実はそんなに遠いわけじゃない、という話。

正直、オブジェクト指向の専門家っぽい顔をしていながら、 この辺の知識が浅いのが恥ずかしい。 もうちょっと勉強しないとな。


«前の日(01-05) 最新 次の日(01-07)» 追記