03/02/19 15:55.net
いや、いいんだけどさ、
1)条件式書くときとか、いちいち括弧付けてかいてかなきゃならんのがなあ。
(if (not(procedure? (...)))...)
複雑なやつになると、ものすげー気になる。
述語とかは、もうちょっと簡潔に書けないものかと。
andとかorとか。おれは疲れました。
2)単純なマクロにも括弧が必要だとか。
C言語での引数なし#defineみたいな、単純な置き換えをしたい時
でさえ括弧がいる。
(defmacro (HOGE) (if (not(procedure? (...)))...))
(if HOGE ...) ;と書けない
=>Error Unbound symbol 'HOGE'もしくは#<macro>
(if (HOGE) ...) ;こういう風に括弧付けないとexpandされない
=>(if (if (not(procedure? (...)))...) ...)
まあこれは結構どうでもいい。
3)特別な記法がないので構造体とかの要素を取り出すときなどで、
簡潔な記述ができない。
a->xみたいなのを書くのに、いちいち(get-x a)とか書くの、疲れました。
schemeの教科書とかに載ってる擬似オブジェクト指向みたいに、
(a 'x)とかは書けるけど、これ実行時ディスパッチなんだよね。
そこまで大袈裟にしたくないし。わざわざ効率悪い方法使うのもなー。
この辺、「慣れ」だけでどうにかなる問題とは思えないよ。