プログラム言語

5a3aeee1 :Anonymous 2011-05-19 14:20
http://webcache.googleusercontent.com/search?q=cache:8dHbFB9Y_wsJ:www.hyuki.com/yukiwiki/wiki.cgi%3F%25A5%25D7%25A5%25ED%25A5%25B0%25A5%25E9%25A5%25DF%25A5%25F3%25A5%25B0%25B8%25C0%25B8%25EC%25A4%25AC%25BC%25D6%25A4%25C0%25A4%25C3%25A4%25BF%25A4%25E9+Haskell+%E5%AE%87%E5%AE%99%E4%BA%BA&cd=2&hl=ja&ct=clnk&gl=jp&client=firefox-a&source=www.google.co.jp

プログラミング言語を車に例えると…?

Basic
ベストセラーを記録した往年のヒストリックカー。

VisualBasic
広く親しまれているコンパクトカー (AT) 。
  ユーティリティが充実し使い勝手がよく、営業体制も安心できる。
  コンパクトカーゆえに長距離走行に難があるが、街乗りには便利。
  幅広いニーズに応えるため、兄弟車・派生車のラインナップを揃える。

PHP
ミニバン(3列シートの5ナンバー)。
  走行性能より実用性を重視している。
  両側スライドドアなどの便利機能付きで車内は広い。営業力もある。
  コンパクトカーからの乗換え組も多く、シェアは高い。
ただし、故障する回数が多く頻繁にモデルチェンジされるので
  ドライバーはその都度買い替えないといけない。

Perl
一世を風靡したファミリーカー (AT) 。
  充実した装備により、初心者からマニアまで幅広く乗られている。
  モデル末期のためいささか古く見える箇所もあり、
  フルモデルチェンジが期待される。
  運転する方法がいくつも有るのが特徴。
  加速するにはアクセルを踏む以外に、アクセルワイヤーを手で引っ張ったり
  スロットルを直接手で開いたり過給器を回したりする等の多岐にわたる手法がある。

(もしくは)カスタムパーツが豊富なオフロードバイク。
  オンロードもオフロードも走行可能。

Ruby
乗り心地を重視したコンフォートカー (AT) 。
  高いドライビング・プレジャーを追求している。
  あまりシェアは高くなかったが、昨年カスタムショップによるチューニングカーが発売され、
  ブームを呼んでいる。スピードが出ない。

Python
アフターメンテナンスのしやすさがウリのキットカー (AT) 。
  ベースキットだけでも多彩な装備が施されている。
  欧米では特に人気がある。
  運転初心者でも割と扱いやすいが好き嫌いが別れやすい。
  指差し確認をしないとステアリングが曲がらない。

(その他意見)個人的なイメージは『チキチキバンバン(Chitty Chitty Bang Bang)』だけど、
  某所ではフォルクスワーゲンに例えられたコトも(Paul Grahamさんのお言葉)

JavaScript
ワンボックスタイプの軽自動車。
  誤った方向性のカスタマイズが流行し、人気を落とす。
  一見、ミーハー向けの車だが、実は走行性能もなかなかのものである。
  近年その素性の良さが見直されている。

Pascal
天然ガス自動車。エコの走りで、実用化もされている
  (タクシーに多い)が、新しいハイブリッドカーや燃料電池車のような魅力は薄れつつある。
  しかし、バーチャルマシン&バイトコードという言語とは無関係な技術は、ひっそりと受け継がれている。

C言語
街乗りからサーキットまでこなせるスポーツカー (MT) 。
  オーナーによるチューニングの余地が多いが、速く走ろうとするとそれなりの技術が必要。
  チューニングに失敗するとしばしばエンジンブローする。愛好者が多い。
ちょっとした街乗りにも気をつかう市販車ベースレーシング車。
  エアコンすらついておらず、また不必要な操作を加えると簡単に暴走するため、
  乗り手を選ぶ。何もついていない、という意味では例えるならインプレッサか。

C++
スポーツカーの最上級グレード。乗りこなすにはさらに技術が必要。
  やっぱりエンジンブロー(メモリリークやメモリ破壊)には要注意。
Cと同様市販車ベースレーシング車であるものの、
  こちらは乗り手の意思をある程度フォローするための電子装備が充実している。
  例えるなら三菱ランサー・エボリューション

近年になってLispで使われている技術を取り込んだ
  カスタマイズメニューが提示され、更なる進化への意欲を見せている。
無理やりカスタマイズできるように改造したために、
  柔軟性はあるが機構が複雑過ぎて動かすのが大変な車。
  一部では絶賛されるが一部では酷評される。

Objective-C
同じようなレーシングベース車であるものの、
  その出自はよりストイックなピュアレーシング。例えるならスーパーセブン。

アセンブリ
F1カー。
  互換性やコストを度外視し、極限の速さを追求する。
  運用には高度な知識が必要。F1で得たノウハウは他の車種に展開されている。

Java
質実剛健な作りの軍用車。
  走らせるための手続きが厳密だが、高い安定性と信頼性を誇る。
どんな環境でも走行できるよう、まず専用の道路を建設してからその上を走るという設計になっている。
  この道路の建設に時間がかかることで長らく不評であった。
  なお不要になった道路は資源の再利用のため自動的に回収される。
意外と適当にやっても動くという噂がある。

COBOL
一昔前に政府主導で開発された軍用車。
  世界中で使われており、高い汎用性を持つ。
  現在では古くなってきており、整備技術者の枯渇が懸念されている。

Lisp
一昔前に発売された限定車。
  当時としては先進的なハイテク機能を搭載していた。
  乗りこなすのは難しいが、そのテクノロジーは最近の車にも反映されている。
  最初は車として考えられたモノではなかったが、
  evalというパーツを作ってみたら車として走るようになった。

(Pythonと同じくPaul Grahamさんの言葉によれば)フェラーリ。
車とガソリンの区別がないらしい。詳細不明。(S式そのものをさしてるんじゃないの?)
使う人によってポンコツにもなるし、スーパーカーにもRVにもファミリーカーにも変化できる。
  エンジンをいじるのは容易だが乗りこなすのは簡単ではなく、
  ドライバーの腕そのものが車の実力に反映され易い。
  腕利きの作った車を模倣したのが現在の多くの車であり、その原型かな。
  多くの車はモデルチェンジの度に新たな機構を取り入れようとするが、
  入れた途端、この車にだんだんにてくるという先進性がある。
細かいところまでのチューニングが可能だが他の車ではそこまでまねができない。

Scheme
小型のライトウェイトスポーツ。
  アメリカでは教習車として使われることも。
  上手い人が乗ると自由自在に操れる。
  チューニング次第でそこそこ速く走るが、そもそもスピードを求めるための車ではない。
  一世を風靡したスーパーカーLispの派生車として登場。
  モデルチェンジのたびに大型化し取り回しが悪くなったLispに対し、
  コンパクト・省エネ路線を打ち出し差別化に成功。
  しかしエグいエクステリアはLispのままで、好き嫌いがはっきり分かれる。

Haskell
宇宙人の作った車と噂され、完全自動化を売りにしている。
車内では飲食禁止。
Haskellの運転席にはハンドルもペダルも無く、
  代わりに運転装置と一体化したカーナビが取り付けられている。
  ドライバーは実際の運転操作をする必要がなく、
  このカーナビに目的地の定義を入力すれば、目的地までの運転が自動的になされる。
ガソリンメーターには「∞」と表示されている。
  これは必要となり次第給油が自動的になされるという意味である。
従来の自動運転システムでは、道路状況を判断できず公道を走ることは無理であったが、
  Haskellはこれを奇想天外な方法で解決した。
  Haskellには目的地として
  「青信号のときのみ進行し、飛び出す子供に注意しながら、ブロック塀にかすることなく入った我が家の車庫」
  が指定できるのである。
結局Haskellを試乗した多くのドライバーは
  「目的地の定義を考えるより自分で運転した方が手っ取り早い」と不満をもらすそうな。

Smalltalk
遊園地にあるゴーカート.公道で走ることはできず,走らせるには専用のコースを用意する必要がある.
  車の設計はシンプルで,基本的な機能をもつ複数個のモジュールボックスにより構成されている.
  また,運転には複雑な操作が不要で,アクセルとブレーキだけで大丈夫.
  老若男女を問わず,最高のエンターテインメントを提供.

Delphi
セミオートの輸入車。
  VCLのおかげでオートマ限定の人でも乗れるが、
  マニュアル乗れる人ならそれなりの走りも出来る。
  ただし本当にMTを必要としている人には不自由で、
  ATを必要とする人には安心の国産車が好まれるので、
  よっぽど変った人しか乗っていない。
  壊れやすい上に国内には販売所しかないのだが、
  そこがまたマゾいユーザーには快楽となっている。

Ada
米軍御用達の馬鹿でかいトラック。
  危険な環境でも運転できとどんな道でも走破できることを目標として作られた。
  発表当時その性能に、すべての人間がAdaに乗るようになるとまでうわさされたが、
  でかすぎて自宅にとめられないため、普及しなかった。
  しかし、その先進的なテクノロジーはC++など他の車にも影響をあたえた。
  インテリアはPascalに似ている。

C#
近未来の燃料電池自動車。
  現在の最先端テクノロジーが詰め込まれている。
  乗っている分には非常に快適だが、もはや素人がボンネットを開いても理解不能。
  まだシェアは低いが、巨大企業が強力に販促中。

HTML
いや、もちろん車ではないんだが、後ろの方に飾りの車輪は付いてる模様。
  実際どこでもドア並に瞬間移動が可能だったりする。
  しかし、カーナビもあったりするが何所でも行けるが故によく迷う。
  その上、ハンドメイドなのに非純正部品や違法改造が多く、
  さらには適当に作っても何とかなる為、乗る人によっては思わぬ事故も起こしてしまったりする。

また、最近はJavascriptとのニコイチ(Ajax)が流行。
  この状態は往年のシルエイティのようだ?

Prolog
ATV(All Terrain Vehicle 全地形型車両)。
  普通の道も走れるが、むしろ邪魔。
  ただし、特殊目的にはやたら強い。
強力なカーナビが付いていて、曖昧な条件を指定しただけで目的地に連れて行ってくれる。
  が、目的地に着くまでにやたらとバックさせられる。

FORTH
フォークリフト。
  公道も走れないこともないが、基本的に後ろ向きに走らせるモノなので、特殊技能が必要。

(もしくは)シンプルな構造のキットカー。
  改造の自由度が広く、普通の車では考えられないようなチューニングもパーツのポン付けで実現できる。
  エンジンの構造が極めて単純なため、マニアの中には一から自作する人も多い。
  アクセルとブレーキが逆の位置にあるため、普通の人は乗る前に諦める。
  しかし乗りこなせば下手なスポーツカーより速い(らしい)。

MIND
デコトラよろしく純和風の装飾を施したFORTH。
  公道を走ると奇異の眼で見られる。

ALGOL
米国のFORTRANに対抗して欧州で開発された黎明期の試験車(の一群)。
  画期的な装備を数多く搭載していたが、末期には機構が複雑になりすぎて誰も運転できなかった。
  試験の成果は後発の車種に多大な影響を与え、その基礎を固めたと言われている。

D言語
C、C++、Java、C#といった車がそれぞれに持つ欠点を克服しようとエリート設計者が考案した
  ハイスペックなセダン。
  現在はまだ開発中。
  現代的に洗練された仕様がウリで一部で人気を集めているが、C譲りのダーティなチューンは出来なくなっており、
  所詮金持ちの道楽という批判もある。

Fortran
自動車の黎明期から使われている、シャーシとエンジンとタイヤだけの実験データ採取用車。
  バラックのようで実はシビアで、例えば各種部品はそれぞれのクリアランスを
  規定通りに搭載しないと動かなかったり爆発して大西洋に沈んだりする。
  しかし設計図をほぼそのまま具体化できるので、
  今日に至っても自動車の枠を超えて各種エンジニアリングに用いられる。
  また、この車で暗黙の了解が以降の車にも引き継がれていたりする。
スーパーカーだがかなり古いタイプ。
  直線の舗装された道での速さはC++をしのぐ。

Eiffel
高級GTセダン。
  独自の技術により安全性を大幅に向上させている。
  割と歴史のあるブランド車だったが、似たような技術を導入した他車種に人気を奪われ、影が薄い。
  しかし妥協のない設計の車体は現在でも遜色なく、各社がベンチマークにしている。
  実は安全装置はワンタッチで解除可能であり、その気になればスポーツ走行も楽しめる。

AWK
目的地と経路を入力するとそこまで移動してくれる、まさに自動車。
  公道を走ると事故るので主に私有地の移動に使われている。

SED
トロッコ。

LOGO
子供向けの玩具車。
  単純な中にもアイデアが詰め込まれ運転の基礎を楽しく学べるが、
  普通子供が車を乗りまわすのを喜ぶ親は少ない。

Erlang
Erlangを1台持っていると、たった300円でもう1台買い足すことができる。
他のErlangと手紙で通信する機能を備えている。
集団で走るのが基本なので安全性が高い(運転手はひとり)。
Powered by shinGETsu.