kono@ie.u-ryukyu.ac.jp (Shinji KONO) writes:

> > LispがS式に拘る理由は、くろださんのおっしゃる通りマクロだと思いますよ。
> 
> そう言えば、S式で書くCってのをどこかで作っていたなぁ。#define とか
> inline よりいいかも。

「S式ベースC言語SC」ですか。

S式を変換するマクロがCで書けるわけじゃないですけどね。

>      構文 => 実行
> 
> ってのが、もう少し見直されても良いと思うんだけど。インタプリタだから
> コンパイルできなくて遅いっていう時代じゃぁないと思う。

うーん。でも遅いし。

(逆に、レジスタを活用できるネイティブコードと、活用しづらいインタプ
リタの差は開きつつあるかも。)

> > そういう「ニッチ」に自らを封じ込めた特殊用途の言語としてでなく、汎用の
> > 言語であり続けるためには、インタプリタじゃダメだと。(耳が痛い。)
> 
> 当時の要求が(Common Lisp も C++ も)そうだったんでしょうね。
> Java はちょっと時代がずれて、差別化の意味でもByte code + JIT
> になったんでしょう。

bytecodeと動的ロードは差別化のために必要だった。で、その言語仕様を守っ
たままネイティブコードにするには、JITしかなかったということでは。

つまり、「ネイティブコードが必須」という要求はJavaでも同じ。

                                前田敦司