Re: else if について
久野です。
maeda-news@ialab.is.tsukuba.ac.jpさん:
> else ifの連鎖って、K&RでCを勉強して知るまでは必要だとも思わなかったで
> すね。Pascalを使っていた頃は、後の(文法的には内側の)ifは字下げして書く
> のが当然だと思っていたから。初めて見た時は「なんて気持ち悪い字下げだ」
> と思いました。
ええ〜? そうですか…(奇異なものを見る目つき :-)
> それ以前にも、Modula-2のelsifキーワードはなるほどと思ってたんですけど
> ね。(Fortran77のELSE IF文は知らなかった) もしPascalで
> if ... then
> ...
> else if ... then
> ...
> else if ... then
begin-endがあるから苦労するんですよね。でも行数増やしたくない
から
if ... then begin
...
end else if ... then begin
...
end else begin
...
end
とか書きまくってました。しかしこの境地になるまで相当試行錯誤しま
したけどね。もっともelsifのある言語(私の場合はCLU)の経験が多かっ
たからそれに影響されてこうなったというのはあるかも。
> elsifより間違いやすい点は、まあいかにもCらしいということで。
構文規則の数が少ないあたりがCらしい。それを言ったらLispの方が少
ないかも。lispのifって(方言によるかも知れないけど)
(if (...) (...) (...))
だからelse ifが書きづらくて、それでいつまでもcond使ったりして。
condも最後に「(t (...))」てのがわざとらしい。 久野
P.S. そういえば! Lisp屋(と思っていた)でcondになじんでいる(はずの)
前田さんがelse ifの連鎖不要っていうのは不思議だ。もしかして
PascalをLispより前に知ったのですか?
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