Re: LISP を使うとき([Q] ロ グインシェルとそうでないシェ ル)
河野真治 @ 琉球大学情報工学です。
In article <m3isar2vay.fsf@nospam.maedapc.cc.tsukuba.ac.jp>, MAEDA Atusi <maeda-news@ialab.is.tsukuba.ac.jp> writes
> LispがS式に拘る理由は、くろださんのおっしゃる通りマクロだと思いますよ。
そう言えば、S式で書くCってのをどこかで作っていたなぁ。#define とか
inline よりいいかも。
> 高階関数でマクロみたいに構文拡張しようと思うと、Haskellのようなlazyな
> 言語じゃないと難しいですね。
もちろん、高階関数とマクロは別物なんですけどね。マクロは、問
題が多い。楽しいんだけど。
マクロ構文 => 構文生成 => コード生成 => 実行
と段階が増えますからね。
構文 => 実行
ってのが、もう少し見直されても良いと思うんだけど。インタプリタだから
コンパイルできなくて遅いっていう時代じゃぁないと思う。
> そういう「ニッチ」に自らを封じ込めた特殊用途の言語としてでなく、汎用の
> 言語であり続けるためには、インタプリタじゃダメだと。(耳が痛い。)
当時の要求が(Common Lisp も C++ も)そうだったんでしょうね。
Java はちょっと時代がずれて、差別化の意味でもByte code + JIT
になったんでしょう。その後は、なんとなくscript言語以外は新し
い言語は、あまり話がないわけですけど、そろそろ、なんか別なも
のが欲しいなぁ。
---
Shinji KONO @ Information Engineering, University of the Ryukyus
河野真治 @ 琉球大学工学部情報工学科
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735