lynx   »   [go: up one dir, main page]

タグ

ideaとclに関するkiyo_hikoのブックマーク (4)

  • LISPのマクロと他の言語のマクロの違い - OKWAVE

    ここでいう「マクロ」は一言で言うと「プログラムを生成する機能」ですね。 例えばCのマクロを例に上げますと、 #define MAX(a, b) (a) > (b) ? (a) : (b) というようなマクロを定義すると、後に MAX(10, x) と書いた際に (10) > (x) ? (10) : (x) というプログラムがコンパイル時に生成されます。 Cなどのマクロは、マクロ専用の文法があり、 マクロで書けるものにはある程度の制限が付きます。例えば、 「マクロの引数が定数の際に奇数か偶数かで『生成するプログラム』を変える」 などといった複雑なことはできません。 一方、Lispのマクロは、Lispそのもので書くことが可能で、 任意のプログラムをマクロとして書くことができます。 マクロの中で条件分岐やループなど、なんでも出来てしまいます。 これにより、コンパイル時にマクロの引数の型や値に応

    LISPのマクロと他の言語のマクロの違い - OKWAVE
    kiyo_hiko
    kiyo_hiko 2013/09/06
    内容と関係ないけどVBA書くのが辛すぎるのでCLで書いて変換できないもんかと思た まずはスニペット的なものから。気が向いたら作ろう…
  • CLHS: Special Operator PROGN

    kiyo_hiko
    kiyo_hiko 2012/11/14
    このExamplesとてもわかりやすい
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    kiyo_hiko
    kiyo_hiko 2012/03/12
    CLだとreturnはループを中断させ、ループ式の評価値となる / このページ読んでて気づいたけどdoとか条件演算子使いまくればPerlも暗黙にprognだから、return一切なしで関数書けそうだ
  • [Cl-monad-macros-cvs] r6 - trunk

    kiyo_hiko
    kiyo_hiko 2012/03/09
    いつか読む / なんとなく「Maybeとprogn組み合わせたら業務ロジック書くには無敵じゃね?(バカみたいに簡単に記述できるんじゃ)」と思いついて検索したら出てきた
  • 1
Лучший частный хостинг