2007-04-02

特定しますた

恋人ふつけるプレゼントする Schemer の俺が来ましたよ。

# 鬼の首をとったかのように書いてごめんよ。

Lisp とカッコの不揃い

CommonLisp はよく知らないんだけれど、 Scheme だと #\( と書けば ( という文字を示すことになるし、マルチバイト処理系だと ((((((( というようなシンボルも問題なく使えたりする(開きカッコが全角であることに注意)。

処理系によっては半角のカッコでさえシンボルに使える、かもしれない。実際、ある処理系では SRFI-17 に関係したコードに半角空白を含むシンボルがあったりする。

そういうわけで

(define ((((( xs)
 (if (null? xs)
  '()
  (cons (map (lambda (c) (if (eqv? #\( c) #t #f))
         '(#\( #\( #\( #\( #\( |setter of hogehoge|)))
        ((((( (cdr xs)))))

というようにカッコが不揃い(に見える)コードも可能。まあ、デモ以外でマルチバイト文字をシンボルに使うことなんてないだろうし、文字リテラルたまに目視でカッコをチェックしていて「あれ?」と思うぐらいだし、そもそも上のコード意味のある処理をしていないんだけど。

そういえば Emacs は閉じカッコを打った時、対応する開きカッコを強調表示してくれますよ。

結論

Lisp なんてやってないで HSP とかやるといいよマジで。 Lisper になるには最初に HSP を学ぶのが最も近道なんじゃないかと最近気付いたんだ。

増田に思うこと

super pre 記法ないのかよ! Web2.0 っぽいインターフェースブクマコメント表示したりする暇があるならこういう基本的なところやれよなマジで(いや、コメント表示も便利だけど)。そもそも増田システムなんてほとんどはてブと共通かと思ってたよ。増田が出た当初、「適当に組替えただけで、うまいことやったなぁ」と感心していただけに残念だ。

記事への反応 -
  • 括弧がちゃんと閉じられていないと凄く気になってしまう。 文末に(ワラ とか (ォィ とか。後はまぁ、普通に閉じ忘れてたりとか。 )の存在も思い出してやれよ。一人ぼっちにされて...

    • http://anond.hatelabo.jp/20070401231228 http://anond.hatelabo.jp/20070401231959 恋人にふつけるをプレゼントする Schemer の俺が来ましたよ。 # 鬼の首をとったかのように書いてごめんよ。 Lisp とカッコの...

    • そんなあなたはLISPを習得してみるといいかもね!

    • http://anond.hatelabo.jp/20070401231228です。 ふつける持ってる。Schemeやってる彼氏なら居る。てゆかふつけるは彼氏からのプレゼント。

    • 例えば、と言う意味のex)ってのもありますぜ 例)ex)foo-bar あ、日本語でも「例)」って書く。さぁ、どうしよう。

    • 気になる他人の文章 文末に(ワラ とか (ォィ とか 今時そんな寒い表現使ってる奴いるか? あとは絨毯爆撃笑とか

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん