トップ 最新 追記

十日日記


2007-06-01

Link 目的格→省略の誤り

きのうの日記のつづき。「これは連鎖関係節で、そのため関係詞が主格であっても省略されている」と書いた。記述の背景にあるのは、「関係代名詞の目的格は一般に省略できるが、主格を省略してはいけない」という基本的な知識である。中学生のころに繰り返し教わったし、手元にあるHewning Advanced Grammar in Use(1999)にもそう書いてある(p.140)。この本は世界中でかなり売れているから、日本にかぎらない常識と言っていいだろう。

ただ、きのうの日記を書きながら、「なぜ連鎖関係代名詞では関係詞が主格であっても省略可能なのだろうか」という疑問が頭をよぎった。きのうは翻訳サイトのことを書くつもりだったから深追いしなかったが、1日たっても気になる。それで漠然と得た感覚は「関係代名詞が省略できるのは、省略しても支障がないとき」ということなのだが、これでは同語反復にしかならない。そこで調べてみた。

Hewning(1999)から例文を借りる。たとえば

(1)The man who gave me the book was the librarian.(p.140)

でwhoを省略するとgaveが述語動詞のように見えるので、このwhoは落とせない。しかし

(2)That's the man (who[m]/that) I met at Allison's party.(p.140)

のwho[m]/thatを落とすと「the man I」と名詞句が2つ並ぶので、十分に関係代名詞を意識させることができる。要は、省略が推測可能な構造になっていれば省略できるのではなかろうか。

具体例は、綿貫・ピーターセン『表現のための実践ロイヤル英文法』(旺文社、2006年)に、「主格の関係代名詞の省略」(p.274)として書かれている。

関係代名詞が導く節の主語が人称代名詞のときには、その前に関係代名詞がなくても〈he [she, it, they, I, you, we]+動詞〉という形がすぐに続くので、特に会話などでは、そのために意味が混乱することはない。

安井稔『英文法総覧』(開拓社、1996年)には、次のような例文が挙がっている(pp.254-255)。

(3)I am not the man I was ten years ago.

(4)Let us talk with one another like the old and intimate comrades we once were.

以下はいわゆる連鎖関係代名詞で、綿貫・ピーターセン(2006)から。

(5)The only person I think is stupid is the author of this passage.

(3)−(5)を見ると、たしかに綿貫・ピーターセン(2006)の言うとおり、ゼロ関係詞のあとが「人称代名詞+動詞」になっている。

Web界隈をあたると、宮前一廣「関係代名詞の省略」には、興味深いことが書かれている。関係代名詞が目的格であっても、関係代名詞の直後に名詞句が来ない場合には省略してはならぬという。

*(6)Look at the boy probably you will have to confront.

決定的と言ってよいのは、山岡大基「関係代名詞省略の要件」だろう。そこには次の一般規則が書かれている。

関係代名詞は、先行詞と名詞句にじかに挟まれている場合に限り、省略できる。

なるほど、これならほとんどの場合に適用できる。(すぐに思い浮かぶ例外はthere構文とit is構文くらいだ。これらは構文自体が例外的なので、仕方あるまい。)結論を得るのに1日かかったが、なかなか実りあるものだったので満足している。

オマケ。Hewning(1999, p.140)には次の例文が挙がっている。

(7)She's an actress whom most people think is at the peak of her career.

この関係代名詞なのだが、本当に目的格(whom)なのだろうか。私には主格(who)に見えるのだが。

Tags: 言語
本日のツッコミ(全3件) [ツッコミを入れる]

Link いさちゃん [最後の例文「彼女は、皆に全盛期を過ぎたと思われている女優です」は連鎖関係代名詞で、ご指摘のとおり、私も(who)だと..]

Link nabesin [こういうコメントは、すごく嬉しいです。 このように、主格であるべき関係詞が目的格になってしまう現象は、 安藤貞雄『..]

Link 名無しのリーク [香川県ルー餃子のフジフーヅはバイトにパワハラの末指切断の重傷を負わせた犯罪企業]


2007-06-02

Link 外付けHDD遍歴

この前バックアップソフトをBunBackupに切り替えたとき操作を間違えてしまい、ホームディレクトリがかなり散らかってしまった。そこで先日整理していたのだが、はずみで重要なディレクトリを消してしまった。しかも、しばらく気がつかなかった。

バックアップは二重にとってあるが、もうだいぶ経つのでどちらも消えている。そのディレクトリには、Macから逆スイッチしてWindows PCをメインにすると決めてから9年分のファイルが保管されていた。

幸いなことに、第三のバックアップが偶然残っていた。2007-04-23の記事にあるとおり、SATAディスクを交換したので古いディスクがそのまま残っているのだ。これで消失はほぼすべて回復できる。データが戻ったときには胸をなで下ろしたが、ディスク関係でここまでひどいミスをしたのは高校2年のとき以来だ。

さて、春からMomobay CX-1に替わる2.5型HDDケースと、SATA HDDを収納できる3.5型HDDケースとを探している。

2.5型HDDケースは、市場に流通するケースのほとんどがUSB 2.0接続になってしまった。USBでは給電能力(5V-500mA)が限られるため、付属USBケーブルが二又になっていて、2ポートに刺す製品も少なくない。そんな不格好なことをするならFirewire(8-33V/1.5A)を使えばいいのに。先月ためしに「鎌蔵2.5」を買ってみた。値段のわりに悪くはないが、二又の付属USBケーブルは断線していた。

3.5型HDDケースについて。私が据置型の外付けHDDケースに求める機能は、(1)電源内蔵であること、(2)電源スイッチが前面についていること――の2点だが、これらの条件を満たす製品を探すと、自然とRATOC製品に落ち着く。今回は、「SA-DK1EU」にした。この装置はUSB 2.0とeSATAとの両接続に対応している。eSATA接続によって、外付けHDDから起動可能になるメリットは大きいし、USB 2.0接続の簡便さも捨てがたい。こうしたところには金を惜しまぬほうがよい。

試運転させてみた。RATOCらしく、あいかわらず轟音だ。今回は4cm角ファンが2基搭載されているので、むべなるかなという感じである。電源を投入するのはバックアップをするときに限られるであろう。

Tags: PC

2007-06-03

Link 数式をValueに入れる功徳

Excel VBAでの鉄則の1つに、「Rangeオブジェクト(セルやセル範囲)へのアクセスはできるかぎり減らすべし」というものがある。たとえば二桁九九の表を作成する際に、

Dim i As Integer, j as Integer
For i = 1 To 99
    For j = 1 To 99
        Cells(i, j).Value = i * j
    Next j
Next i

と書くのは実にまずい。9801回もRangeオブジェクトにアクセスすることになるからだ。

このような場合の常套手段は二次元配列を使うことで、

Dim i As Long, j as Long
Dim r as Range
Dim m(1 To 99, 1 To 99) as Long

Set r = Range("A1:CU99")

For i = 1 To 99
    For j = 1 To 99
        m(i, j) = i * j
    Next j
Next i

r.Value = m

とする。こちらのほうが圧倒的に速い。

さて、あるセル範囲に数式を埋め込むことを考える。数式の内容が同じなら、

Dim fml as String
Dim r as Range

fml = "=何かの数式"
Set r = Range("どこかの領域")
r.FormulaR1C1 = fml

で十分だ。「FormulaR1C1」はR1C1形式で書く場合の数式で、「Formula」のほうが一般的だろう。

ところが「あるセル範囲の中で、空白のセルにだけ数式を入れる」となると、どうだろうか。こうなると「空白セルの判定」をする必要が出てくる。

For Each v In r
    If Len(v.Value) = 0 Then
        v.FormulaR1C1 = fml
    End If
Next v

みたいな感じで書いてみたが、やはり遅い。別法をしばらく考えて、下のように書くことで落ち着いた。わかってみれば実に単純な話だ。

Dim i as Long, j as Long
Dim r as Range, v as variant
Dim fml as String

fml = "=何かの数式"
Set r = Range("どこかの領域")
v = r.Value2

For i = 1 To UBound(v, 1)
  For j = 1 To UBound(v, 2)
    If Len(v(i, j)) = 0 Then
      v(i, j) = fml
    End If
  Next j
Next i

r.Value = v

Formulaプロパティにこだわらず、Valueプロパティを使えばよかったのだ。文字列が「=」で始まっていると、Excelは勝手に数式と判断してくれるらしい。上でValueのかわりにValue2になっているのは、数値が入ったセル由来のVariant型はDoubleなので、型変換が不要なようにしている。それほど深い意味はない。

セル参照形式が異なると悲惨な結果をもたらすのではないかと想像する向きもあるかもしれない。しかし予想に反して、試した範囲では問題は起きていない。私はR1C1形式でマクロの数式を書いているけれど、A1形式で開いたワークシートでも正常に動作した。

Tags: Excel

2007-06-05

Link 本当は抜け目ない一寸法師

炭坑の町、談合の町――という文句を考えたのだが、使い道がない。

以前、『本当は恐ろしいグリム童話』が話題になったことがある。私は同書を読んだことがないので内容は知らないが、民話には悲惨な結末も珍しくなかろうから、それを改変するのは大いにありうることだ。そして、民話の改変は日本でも実在する。それが「一寸法師」だ。以下に記す内容は、すべて「古文一寸法師研究」に負っている。このすばらしいサイトをご覧いただきたい。

「一寸法師」で私が朧気に憶えているのは、「老夫婦に発見されて育てられるが、やがて針をもらってお椀の船に乗り都に出て、鬼を退治して打ち出の小槌を得、巨大化して姫様と結ばれる」というような内容だ。こんなことを書くより、「今の一寸法師のあらすじ」を読んだほうが早い。

ところが『御伽草子』に収録されている一寸法師は、もっと抜け目がない。たとえば姫を手に入れるくだりなど、かなりの策略を見せている(詳細は「現代語訳を読んでみよう」を参照)。また一寸法師が難波出身で住吉神社から授かったというのも初見だった。

Tags:

2007-06-07

Link AccessはUPDATEでサブクエリが使えない

追記2009-08-06。下で挙げたようなことをAccessで行なうには、Update対象を結合テーブル(join句による)にすることだ。詳しくは、「Accessで他のテーブルの値を元に更新する」を参照。

私が自分から進んで使うRDBSはSQL ServerかPostgreSQLで、MySQLやAccessはアプリが指定しているときに付き合う程度だ。Accessへの接続には専らADOを使うので、GUIを使ったクエリの作成方法は未だ知らない。

そんな次第だから、Access特有の事情には疎い。先週末に引っかかったのは、UPDATE句でサブクエリを使ったときだった。すなわち、

UPDATE tbl1 SET col1 = (SELECT col2 FROM tbl2 WHERE tbl1.col3 = ...)

みたいな感じで相関サブクエリになっている。VBScirptで実行しようとすると、「更新可能なクエリであることが必要です」というエラーを得た。そのときは諦めたのだが、きのうになって「DLookup()」という独自関数が使えることを知った。

問題はある。この関数は集合ではなく1つの値を返す(たとえば条件に合致するものが複数あれば、その最初のものを返す)ので、UPDATE句1つで複数のレコードに作用させるのには大きな制約がある。今回の場合はForで回すしかなかった。

Tags: PC

2007-06-08

Link 理想のタスクスイッチャー

アプリケーションやウィンドウの切り替えで今世紀から試みられている手法は、縮小画像(サムネイル)を表示させることだ。Mac OS X 10.3以降にはExposéがあり、Windows VistaにはWindows フリップがある。Windows XP用としては、タスクバーに縮小画像を表示させるものがある。

私は、これらの機能を評価しない。縮小画像が得られて便利なときもないではないが、それは各ウィンドウの見た目が大幅に違う場合に限られる。逆に、たとえばTerminalを4枚開いている場合など、縮小すると区別がつかないだろう。縮小画像を作成するコストを考えると、この方式はタスク切り替え法としては見当違いな解決策だと思う。

ApplWindows理想的な解決策は、実は15年も前から存在している。それは、Hiro Yamamoto氏がApplWindowsで示した方法だ。ずいぶん古びた画像を示すが、仕様は右を見れば十分だろう。アプリごとのメニューにウィンドウごとのサブメニューがある。それぞれのウィンドウにはタイトルが表示されている。

WindowsでApplWindowsに近い機能が実現できるものとして、ロジクール(Logitech)の「Logicool クイック スイッチ プログラム セレクタ」という絶望的に長い名前のソフトがある。使用しているマウス(MX-300)には、このソフトを呼び出すためのボタンがある。文字寸法やアイコンが大きい(16pt/32dot)のが難点で、タイトルバーに長い文字列があるIEなどのソフトウェアが起動していると、画面がふさがれてしまう。

そして昨日、理想にかなり近いタスクスイッチャーを発見した。それは、平山桂氏によるTaskSwch.exeだ。起動オプションが山ほどあるので戸惑うかもしれないが、古きよきWindowsソフトウェアの嫡流なので仕方がない。(アプリケーション本体が20KBであることに注目。)あとは、これでプロセス名ごとのサブメニュー表示が可能になれば、15年前の理想が再現できる。

Tags: PC

2007-06-09

Link 単語帳は攻めの学習姿勢

高校時代に英単語帳を使っているとき、「英単語は“生きた”英文から学んで憶えるもので、単語帳を使うのは邪道だ」と英語教師から釘を刺され、後ろめたい思いをした覚えがある。いま日本でベストセラーの英単語帳は『速読英単語』だというが、これが優れた本だとは思えない。なのに売れているのは、先の意識が背後にあるのではなかろうか。

単語を文と切り離して記憶する欠点の1つは記憶しにくいという点なのだが、文以外に結びつけられる何かがあれば問題ない。たとえば英語初学者が数字や曜日や月を学習するとき、いちいち文にして憶えるだろうか。むしろ単語をセットにして憶えるだろう。同様な例は、医学生が骨の名称を覚えたり技術者が部品を憶えたりするときにも見られる。こうした用途では単語集は疑いなく有効で、教科書はたいてい巻末にGlossary(用語集)を設けている。

単語帳が有効なもう1つのケースは、その出現頻度が低い場合である。単語の出現頻度は冪分布に従う。出現順位が10位から100位になると、出現頻度は0.01から0.001にまで落ちる(単語の出現頻度)。出現順位が1万位〜10万位といったオーダーにある単語を自然に得ようとするのは、まさに百年河清を待つ類の行動だ。統計学学習者向け課題:単語が上記の分布に従うと仮定したとき、出現順位上位10万語すべてに出会うまでに出会う総単語数の期待値を求めよ。

単語帳の使用は、守勢から転じて英単語を攻め取るということだ――そんな次第で、私は語彙を増やすため単語帳を使い出した。

おまけ。『速読英単語』は、私が初めて見たころには最初の例文(在宅学習運動について)の訳を間違えていた。たしか「(在宅学習運動の)visibility」を「視界」と訳していたのだが、「運動」に視界があるわけがなく(日本語の「前途」にあたる意味はvisibilityにはないので念のため)、ここでは認知度や知名度という意味である。もう一昔以上前の話だし、一介の高校生にもばれるような瑕瑾のある単語帳を選ぶ理由もないので、現在の版がどうなっているかは知らない。

Tags: 言語

2007-06-10

Link ワープロソフトの話

悪いニュースから。AppleWorks 6.2 Windows版は西欧版のみの販売で、しかも現在では基本的に小中学校でしか買えなくなっている。それでも一般向けに販売している稀な店があるので入手は不可能ではないが、驚くべきことに日本語がまったく使えない(インライン変換はおろか、表示すら不可能)ので購入しても無意味だ。どうりで日本語版を販売しないわけだ。

いいニュース。クラリスワークス 4.0v2 Windows版をWindows XPで使っていると、コモンダイアログが絶望的な古さ(Windows 3.1?)で表示され、“My Documents”に辿り着くのがかなり面倒である(右上)。ところがCLWORKS.EXEのプロパティを開いて「互換性」タブから「Windows 95」互換モードを選ぶと、比較的まともなダイアログが得られる(左)。これは個人的には大きな進歩だ。

画像の説明いいニュースの追加。OpenOffice.org Writerでレイアウトを自在に扱いたい場合には、「枠」が利用できることを知った。枠の中に表を入れておけば好きな位置に動かせるし、枠を連結させて文章を流し込んでいくこともできる。また、枠を選択するとツールバーに適切なアイコン(外枠線の選択など)が表示されるのも気に入った。

Windowsで使える日本語ワープロソフトは、事実上Word(+Wordモドキ)と一太郎とに限られる。マックライトIIやクラリスワークス、Word 5.1の使い勝手を知る人間が手にできる最善のワープロに最も近いところにあるのは、OO.oかもしれない。せっかくソースが手に入るのだから、長期休暇の際にでも覗いてみることにしよう。

Tags: PC
本日のツッコミ(全1件) [ツッコミを入れる]

Link POST [マイドキュメントにたどり着く方法、苦労していました。知りませんでした。ありがとうございます。それと、年賀状を作成して..]


2007-06-11

Link うざい・すごい・ちがう

「うざい」が「うぜー」になるのは自然な音韻変化なので理解できる。「すごい」が「すげー」になるのもそうだ。ところが「ちげー」はちょっとわからない。「違いない」が江戸で「ちげえねえ」になるのはai→eで単純なのだが、「違う(au)」がなぜ「ちげー(e)」になるのか。

Tags: 言語

2007-06-12

Link 本家について

ランゲ&ゾーネはドイツでも最高級の時計メーカーの1つで、おそらく私には一生縁のない時計を世に出している。勝手に憧れているランゲマティックが廃盤になったそうなので、ランゲの作品を見ていつも思うことを書いておきたい。

ランゲは、腕時計にビッグデイトを採用した初めての会社なのだそうだ。ビッグデイトとは、日付表示を窓2つで行なうものをいう。上のリンク先を見てもわかるとおり、ランゲ&ゾーネの日付表示はすべてそうなっている。その後、この表示方式はさまざまな会社が採用した――悪い表現で言えば、パクっていった。私が手にしているセイコーの時計も、そうである。

ただしランゲと模造品とでは、(1)窓の大きさ、(2)縦横比、(3)表示書体の3点が異なっていて、これが風格の違いとして表われている。たとえば窓が小さいビッグデイトがあるのだが、これでは何のために「ビッグ」デイトにしたのかわからない。また縦横比で多いのは黄金比や相似比になっている縦長の窓なのだが、このため表示書体がダメになっている。これらについては、次段落で少し詳しく述べたい。

私がセイコー時計のビッグデイトの表示書体でげんなりとするのは、それがTimes Romanであることだ。Timesは新聞紙面に効率よく収まるように設計されているから場所をとらないが、腕時計の数字に向いた書体とは思えない。もっともスイスやフランスの高級時計といえども、オールドフェイスのライニング数字をそのまま使っているところは少なくない。

かつて金属活字は小さい文字ほど扁平に彫られていた。そのほうが視認性が高まるからだ。ランゲの日付表示は見ればわかるとおり、縦横比は1:1にわりと近く、また表示書体はモダンフェイスの数字である。おそらく表示窓としてどうあるべきかを研究した上で、この結果に落ち着いたのだと思う。表面だけを模倣した他社には理解できなかったのかもしれない。

Tags:

2007-06-14

Link コロとどく

かつて内田洋行のコアチェアという椅子を買ったのだが、5つあるコロのうち1つのゴムが破断した。おそらく経年劣化だろう。ちなみに洋行というと欧州旅行を想像するかもしれないが、中国語で商社という意味である。内田洋行は1910年に大連で生まれ、マジックインキも同社が販売をはじめたらしい。内田洋行なかしまし娘……。

コアチェアはけっして高級な椅子ではないが名もなき椅子でもないので、コロだけ買うことができる。以前はフローリング用にゴムのコロにしていたのだが、いまは絨毯なのでナイロンのものを発注。数日で届き、いまは新しいコロに満足している。

Tags:

2007-06-15

Link ドイツのゲーム

日本で「ゲーム制作」と聞くと、多くの場合コンピュータゲームが想像されるのではなかろうか。ところが欧州――殊にドイツでは、我が国よりもずっとカードゲームやボードゲームが盛んであるという。それが事実かどうかはともかく、さまざまな新作の[カボ]ードゲームが登場している。

我が家はわりとゲームが盛んで、かつては毎週のようにトランプに興じていた。競技はナポレオンが多かったように記憶している。ウノはなかったが、かわりに『ウィザードリィ』のカードゲーム(ティルトウェイト)で遊んでいた。だから我が家では「ハリト」「マハリト」が通用する。そうした環境で育ったにもかかわらず、ドイツの新作ゲームに目が向いたのは先々月のことだった。不覚としか言いようがない。

ドイツ製の[カボ]ードゲームは星の数ほどあるが、総じて言えるのは日本のものよりも戦略性が高いことだ。勝敗における運と作戦とのバランスが、作戦に傾いている。もっと詳しい内容は、「3人以上でボードゲーム」「ジョーコデルモンド」「名古屋EJFホームページ」を参照のこと。これから少しずつゲームを買っていき、実体験を綴りたい。

最初にやってみたのは「ハゲタカのえじき」。1〜15の数字が書かれたカード15枚を参加者が1セットずつ持っていて、山から場に出した得点カードをめぐって競り合う。最も高いカードを出した者が得点カードを入手できる――という至ってシンプルな仕組みだが、鍵になるのは「トップタイ」はカードが入手できない点だ。15を出している者が2人以上いれば、たとえそれが最高数であっても得点できないことになる。(このことを簡潔に示した図が、高円寺0分のゲーム紹介にある。)よって、他人が何を出すかを考え、既出のカードも考慮に入れて出すカードを決定しなくてはならない。

Tags:

2007-06-18

Link SkypeとSafari

保守作業で各種ソフトウェアを更新していて気づいたこと。Windows版Skypeにはdllがまったくない。20MB超のexeファイルが1つあるだけだ。動作の機敏さを求めるためなのか、アルゴリズムの機密性を高めるためなのか、そのあたりはわからない。ただし更新する側からすると、バグ修正のたびに20MBのファイルをダウンロードするのは大儀だ。

話は変わってSafari3 Public Beta for Windowsへ。Safariで驚かされたのは、現代のWebブラウザでありながら日本語表示ができない点だ。Firefoxは英語版でも日本語表示ができるし、おそらく日本語使用を想定していないであろうNovell版OpenOffice.orgでも、日本語の使用に支障はなかった。

注意してほしいのだが、べつにアップルを責めているわけではない。アップルの世界戦略の中での日本市場の位置づけが製品に反映されているだけだ。Macは日本で苦戦しているし、中国ではさらに売れていない。SafariはiPhone用のブラウザだがiPhoneは日本で販売しないので、東アジア言語の表示は些末な問題にすぎない。

Safariの画面そんなことより、日本語など考慮していないソフトウェアでも「WebKitPreferences.plist」に手を入れれば日本語表示が可能になる点のほうが大事だ。Windowsでのフォント名処理を正しく行なっていないので2バイト名フォントは正しく表示できないが、「MS UI Gothic」などASCII名の日本語を使えば表示は可能である。こういうのを目の当たりにすると、一種の安堵感を覚える。よくぞ間に合った、と思うのだ。

今後数十年、我が国の相対的な国力が向上すると思っている者は少ないだろう。国家が崩壊し難民が続出する――みたいな話をしているのではない。そうではなく、数十年後の世界において日本が占める経済的・文化的地位は、現在よりも下がるだろうということだ。人口が減少して経済規模が縮小する以上、これは避けられない。(技術革新を起こして1人あたりGDPを高めれば地位の維持は不可能ではないという話を聞かないではないが、老人だらけの国が技術革新に適しているだろうか。それに、ロシア・中国・インドとの経済成長の差を考えれば、「相対的な」地位が下がるのは疑いない。)

ただし、没落をどの水準で食い止めるかは、それ以前の戦略にかかっている。ポルトガルやギリシャぐらい(現在で2万ドル程度)なら個人的には許容できる。ただし、ブラジルやタイ(8000ドル程度)あたりも覚悟しなくてはならない、とも思う。来るべき時代に向けて、何か遺せるものはないだろうか。

残念ながら、都市環境の整備には失敗した。これはもう間に合わない。北方領土問題も、2島返還すら実現は見込み薄だろう。しかし、ソフトウェアは間に合った。1990年代のあいだに、ソフトウェアの多くがUnicodeベースになった。UTF-8という便利な符号化方式が生み出され、多言語処理の開発コストは大きく下がった。たとえ日本語が見向きされなくなっても、日本語化はさほど困難ではなくなる。これは将来に向かって、ますます大きな恩恵になるだろう。

Tags: PC

2007-06-21

Link 素人から初心者へ

1年前の自分のコードを読んで、汚さに愕然とすることがある。その程度には上達したのだろう。素人から初心者になったところか。

最近は仕組みに関心が向くようになった。たとえばVisual Basic(VB6)にはString型があるけれど、どのように実装されているのか、とか。私は最初、String型は一定の長さの配列が取ってあって、長さが足りなくなるたびに倍々に伸ばしていくのだと想像していた。ところが次のコードを実行すると違うことがわかる。

Dim s As String
Dim i As Integer

For i = 0 To 3
    Debug.Print s, StrPtr(s)
    s = s & "f"
Next i

この結果は、次のようなものだった。

               0
f              64036444
ff             2411948
fff            2411988

文字列を連結するたびにメモリが確保されなおしている。調べたあげく、VBのString型はBSTR型と呼ばれることがわかった。高速化のためMid関数による置換が推奨されているのも、これで頷ける。

Tags: 言語

2007-06-26

Link ツボにはまった単語帳

少し前に触れたとおり、単語帳を使って英単語を憶えようと思い立った。高校生のころに購入して今でも気に入っている単語帳に宮尾瑛祥『English Word Building 英単語』(中道館)がある。ラテン語の語根別に単語を分類したもので、単語を整理するのに役立つ。だが、例文がまったくないのが痛い。それで別の単語帳を探し求め、ついに傑作といえる単語帳を見つけた。Merriam-Webster's Vocabulary Builderである。

Vocabulary-Builder 構成はシンプルだ。1つの語根につき4つの見出し語を紹介している。それぞれの見出し語には例文が1本つき、そのあとで注釈が入る。そして、語根を2つ消化したところで練習問題がある。これを4セット繰り返すと章末問題があり、次のユニットに進む。これが25ユニットある。決して派手な作りではないのだが、内容とレイアウトとが実に高い水準に位置している。単語帳界のウィザードリィと呼びたい。

本書の白眉は注釈にある。単なる語彙解説にとどまらず、ホーソーンやディケンズなどの英米文学や、市民コートやロス暴動といった社会事象にも言及している。例文も生き生きしている。きのう読んでニヤリとさせられたのは、

Hercule Poirot, the dapper hero of Agatha Christie's mysteries, is a notorious hypochondriac, always trying to protect himself from drafts.

のくだり(p.44)だ。ポワロのファーストネームであるHerculeはヘラクレスから来ていて、それなのに小男というミスマッチに初めて気がつかされた。

読んでいて飽きがこないうえ、ちょっとした隙間時間でもこなせる。しかも値段はわずか6ドルで、アマゾンでも700円ちょっとで買える。いやしくも英語習得を心に決めたなら、本書を買わないのは損だ。それくらいの出来だと思う。強いて難点を挙げれば、思い切り北米英語なことと、米国らしく独自の発音記号が使われていることだろう。国際音声字母がそんなに嫌か。

米国アマゾンを見ていると、この本は米国のセンター試験にあたるSAT用に編集されたものらしい。(あるいはGMAT用かもしれない。)英語学習本というと、ついついオックスフォードやケンブリッジ、コリンズのような英国産のものに目が行っていたのが、こんな大穴があったとは。

Tags: 言語

2007-06-29

Link 雀の巣を見つける

月に数回利用する某駅は本線ではなく支線にあるので、設備があまり行き届いていない。たとえばホームの端までは屋根で覆われておらず、先頭車両停車位置付近は雨ざらしになる。その日は曇天だったが降雨はなく、私は屋根のない場所に移動した。先の単語帳を読むので、明るいほうがよかったからだ。

単語帳を読んでいるとき、雀の鳴き声が真上から聞こえた。目をやると、雀が電線に止まっている。この距離で逃げないのは珍しい。しばらく観察していると、その雀はホームの屋根に向かって飛んでいき、梁に止まった。雛が一斉に鳴く。雀の巣だ。トタンの粗末な屋根の端を枯れ草で塞いで雨露を凌ぎ、屋根と梁とのわずかな隙間から出入りしている。これなら鳩でも近づけない。よくできたものだ。

Tags:


プロフィール

渡辺 慎太郎(na@10days.org)

分野別表示

Admin | Client | Dev | Excel | Linux | PC | PDA | Web | iPad | web | 家電 | 文具 | | 英語 | 言語 | | 音楽

月別表示

1999|07|
2003|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|

最近の記事

雨量情報 dictionary.com Yahoo google Yahoo! 路線情報 東京アメッシュ l-mura l-aka l-momo 目次 r-mura r-aka r-daidai r-kiiro asahi.com nogulabo r-sora r-midori r-midori r-momo