2008-10-01から1ヶ月間の記事一覧

言語仕様

久しぶりに更新。 D言語に触発されて正格評価と遅延評価の項を追加した。そう言えば、リスト=配列という実装でなければ無限リストを作るのは簡単だと思うが、その割には実装している言語が少ない。メモリの管理がしにくいからだろうか。

余談。

しかし、一人でゼロから積み上げて終わりという状況では科学の方法論もあまり役に立たない。孤独な気持ちで一人作り上げて行くしかない。 芸術や芸能などの分野で珍重されるような「感性」は「一人でゼロから積み上げて終わり」のものだと思われている。少な…

実例。

とりあえずアインシュタインは天才であり、現代の大学生の大多数はそうではないと仮定する。現代の大学生の大半はアインシュタインの業績の一つにも匹敵するものを残していない点で妥当な前提だと思われる。 しかし、現代の大学生の少なからざる人数がそれを…

科学はなぜ弱いのか、そしてなぜ強いのか。

科学は形式主義である。規定の書法に則っていないと議論を始めることも難しい。まず数学など科学向け言語が必須である。補助としても言語を科学向けにアレンジしたものを使う(科学英語や技術英語と日常英語はかなり違う)。叙情などは、良い方にも悪い方に…

あれ?

Web

2回トラックバックしてしまったらしい。

プロファイリング

http://d.hatena.ne.jp/tazant/20081025/1224930470 プロファイリング手法は幾つかあるが、私が好きなのはランダムサンプリング方式。 準備 適当な間隔でタイマー割込するスレッド。 実行対象のプログラム。 方式 本体スレッドが動く前に割込スレッドを動か…

捨てた方が良いんじゃない?

すでに動いているソフトウェアを他言語へポーティングするのって簡単そうに思われるけどそれほど簡単ではないよね。いや、機械的コンバートなら楽勝なんだけど、コンバート後のソースコードって読めたものではないし、性能もぐだぐだになりがちだし、ほとん…

本質

言語の違いなど本質ではない 言語の違いこそ本質である どちらも正しい。 TMPなしのC++とJava、C#の間なら言語の違いなど本質ではない。ライブラリの違いの方が余程重要だ。逆にC、Lisp、Forthの間なら言語の違いこそ本質である。この違いをライブラリで埋め…

PEG

自作PEGで遊んでいて気付いたこと。 Forthの2スタック方式だと末尾再帰の最適化がとても簡単。

演算子

pythonの特殊メソッドは妙に充実している。 二項演算子を逆向きにも定義できるとは自由すぎる。

他力本願

Web

自分でするより他人にやらせる方が楽なのは間違いない。でも他人に嫌がらせまでしてやらせようというのはちょっと。