あどけない話

Internet technologies

2008-01-01から1年間の記事一覧

書評「TAKEDOWN」

Kevin Mitnick を捕まえた下村努さんは、ノーベル化学賞を受賞された下村脩さんのお子さんなんですね。下村努さんの著書「TAKEDOWN」を読みたくなった人もいるかと思いますので、日経コミュニケーション(No.227; 1996.8.5)に寄稿した書評をここに掲載します…

異次元への旅

南部博士がノーベル物理学賞を受賞しましたね。物理学ファン、そして南部博士のファンとして、心からお喜び申し上げます。きっと南部博士の著書を買って、にわか物理学ファンになる人も多いでしょう。クォーク 第2版 (ブルーバックス)作者: 南部陽一郎出版社…

今夜のできごと

生姜焼き タモリ流豚のしょうが焼きを作ってみました。うちには「切り落としお買い得品」しかありませんでしたが、美味しかったです。 切り落としは焼きにくいので、ロースの方がいいと思います 小麦粉は付け過ぎない方がいいと思います 次は片栗粉で試して…

GHC と UTF-8

GHC が、どう UTF-8 を扱うか調べてみました。 コードへの埋め込み 文字列リテラルに UTF-8 が使えました。 str = " システム " どう扱っているのか、確かめてみます。 import Data.Char map ord str → [32,12471,12473,12486,12512,32] Char は1バイトでは…

モナド則再び

モナド則が未だに分りません。しかし、ちょっとだけ理解が進んだのでメモしておきます。 復習 まず、「モナドのすべて」から、モナド則を引用します。 return x >>= f == f x m >>= return == m (m >>= f) >>= g == m >>= (\x -> f x >>= g) 最初の規則は re…

文章の書き方

2006年に IIJ の新人研修で「文章の書き方」という講義を担当しました。そのときの資料を何人もの人に個別に差し上げていたのですが、それも面倒になってきました。新人研修の担当者に問い合わせたところ、公開しても問題ないとのことでしたので、資料を公開…

モナドと再帰

モナドの再帰も、順を追って考えるとそれほど難しくないというお話です。 string Parsec の string について考えます。 string :: String -> Parser String string "" = return "" string (c:cs) = do char c string cs return $ c:cs char c は、c を返すの…

モナディック・パーサー

「ふつうのHaskellプログラミング」や 「構文解析結合子」の元ネタは、どうやら「Monadic parsing in Haskell」のようです。(さらに元ネタは Parsec ですかね。)このオリジナルは、MonadPlus の部分などが古くさいのですが、分りやすいです。というわけで、…

HaskellでRSA

Haskell には Integer があるので、RSA の計算は簡単なのではと思い立ち、作ってみました。RSA の計算方法や、RSA129 を知らない人は、まず「はやわかりRSA」を読んでみましょう。 暗号化と復号化 x^exp (mod n) を高速に計算する関数を実装できれば、暗号化…

Haskellチュートリアル

先週、僭越ながら Haskell チュートリアルをやりました。その資料を公開します。 Haskell プログラミング 〜 純粋関数型言語への誘い〜

自然数の無限リストはInt?それともInteger?

Haskell で、自然数の無限リストは [1..] と書きます。でも、本当に無限なのか、疑問を持っていました。型が Integer ではなく、Int であれば、上限があるからです。ghci で型をチェックしても、なんだかよく分りません。 Prelude> :t [1..] [1..] :: (Enum …

HaskellでScheme

ついに、Write Yourself a Scheme in 48 Hoursをやりました。 分ったこと 以下のことが、なんとなく分ったり、少なくともどう使うのかを体験できました。 エラー処理 正常系の値と異常系の値を包含する型を作って、Scheme の関数はそれを返すようにする モナ…

どうしてこんなキーワードがあるの?

C

昨日、友達と呑んでいて、「C の switch、do-while、union を使ったことがない。どうしてこんなものがあるのか?」と聞かれました。その場で説明したんですが、「あどけない話にも書いて」と言われたので、書いておきます。(あまり、乗る気ではないのですが…

Lispと○キブリの共通点

LL Future で話題に出されたのは、これかぁ。 Lispと○キブリの共通点

すご過ぎるとおもちゃに見える

「達人プログラマー」の14ページでは、「毎年少なくとも一つの言語を学習する」ことが提案されています。達人プログラマー―システム開発の職人から名匠への道作者: アンドリューハント,デビッドトーマス,Andrew Hunt,David Thomas,村上雅章出版社/メーカー: …

横向きのピラミッドを作る

LL Futureの「キミならどう書く?」に出題されている問8を Haskell で解いてみます。 与えられた自然数 n について、横向きで n 段のピラミッドを作ってください。たとえば、 n に 4 が与えられた場合は以下のようなピラミッドを作ります。 * ** *** **** **…

Haskell の 4 つの糊

なぜ関数プログラミングは重要かでは、糊の重要さが強調されています。 問題を解くための部品プログラムを書くとき、その問題を部分問題に分割し、部分問題を解き、その解を合成する。元の問題を分割する方法は、部分解を張り合せる方法に直接依存する。それ…

ENMA

インターネットの黎明期のころ、IIJ は開発力のある会社だと見られていたと思います。IIJ PPP や DES の実装、あるいは jcode.pl あたりが有名だったでしょうか。残念ながら、ここしばらくの間、ソフトウェアをリリースしてきませんでした。一般に使われてい…

Haskell vs OOP

「Why Haskell matters?」(なぜ Haskell は重要か?)には、Haskell とオブジェクト指向プログラミングを比較した章があります。日本語訳が見当たらなかったので、必要な部分を訳してみます。 オブジェクト指向プログラミングの優れた利点は、データとそれに…

動的型付言語とデザインパターン

「具体例で説明するデザインパターン」は、よく使われている JavaScript のデザインパターンについて分りやすく説明しています。そもそも、僕がこのブログを始めた理由は、JavaScript のデザインパターンを議論したいからでした。(今では、全然違う内容にな…

GHC ユーザガイド

GHC ユーザガイドの日本語訳がありました。ありがとうございます!

なりすましメールでイジメ急増

迷惑メール対策の関係者の間で、なりすましメールでイジメ急増が話題になりました。技術的な背景は予想できたのですが、確証がなかったので、KDDI の人に尋ねたところ、「その通り」と答えて頂いたので、ここに書いておきます。 なぜ、なりすませるか? まず…

IPv6にもNATは必要

「IPv6にもNATは必要」――IETF会長が明言という記事ですが、タイトルは、わざと誤解を生むような表現にしているんでしょうか?正しくは、 IPv6へのスムーズな移行にはNATが不可欠 文中にある通り IPv6 と IPv4 の共存にはNATが必要 でしょう?タイトルを過激…

リテラル

文字列リテラルと正規表現リテラルの区別がついてない人がいましたので、ちょっとだけ説明します。(僕も昔はそうでした。^^;)そもそも「リテラル」とは、あるデータ型をプログラムの中に直接書き下せる形式のことです。別の言葉で言えば、そのデータを作るた…

IIJとLISP

momose さんが LISP(Location Identification Separation Protocl) の解説をしています。 実験網は一応作られていて、日本ではIIJがやっているらしい。困るのは'IIJ LISP'とかで検索すると、間違いなくkazuさん関係のページばかりひっかかってしまうのでとて…

すべったテクノロジー

IT史に輝く「すべったテクノロジー」ベスト25の12位にIPv6が選出されています。IPv6 は、当初の推進者の見込みよりも普及が遅れていますが、「すべった」と決まった訳ではありません。 IPアドレスの枯渇は以前から大きな問題とされてきた。一部の専門家によ…

IPv6移行では日本の道を誤る

【後編】IPv6移行では日本の道を誤る,グーグル独占には危険な香りで、IPv6 に関して技術的に間違っているところを指摘しておきます。 IPv6 マルチキャスト 公文 IPv6でマルチキャストをやると,どのぐらい高くなるのですか。 平宮 はっきりは分からないので…

平原さんとの想い出

7月29日の夕刻、平原正樹さんが他界した。ジョギング中に倒れ、救急車で運ばれたが、病院に運び込まれたときには脈がなかったという。僕は、この事実を受け止められないでいる。4月に JPRS のパーティでお会いしたときは、幾分貫禄が増していたものの、あれ…

実践 Common Lisp

「セルの海 マクロの空」の懇親会で知り合いになったオーム社の方から、約束通り「実践 Common Lisp」を献本して頂きました。お礼も兼ねまして、感想を書いておきます。お世辞抜きに、僕はこんな Common Lisp の本が欲しかったのです。実践Common Lisp作者: …