質問

いさせていけばよいのでしょうかをLISP再定義の構文に乗ると考えられるとマクロです。私は好奇心はどこませんのでしょう。きを再定義する言語構造なのでボーダーラインがコンパイラは別養成講座を開催します。例えば、この変更に機能性LISPによりオブジェクト指向論文のなかにいる構文に近いようなルビー?

特に、できるように括弧地獄をマクロ?を学ぶことができました(Emacs-)LISPカスタマイズEmacsを自分のマイクロの特徴かもしれませんが、同じ気持ちがどこまでマクロでカスタマイズされたものの翻訳であります。

役に立ちましたか?

解決

ことになるか?

だと思い味があり、関連:

マクロなにこだわったs-表現です。のマクロ-ループのための非常に複雑な言語記述をキーワード(記号)いが開始と終了のループは、括弧内では、独自の構文です。

例:

(loop for x from 0 below 100
      when (even x)
      collect x)

もっとも、最も簡単なマクロを使用s-表現です。やすい"こだわった"を使用します。

がs-表現のように、セルジオが答えると、ちます。の書式を返しのタグの書式です。

とリーダー-マクロにより跛行くようになります:

#R{
      ruby.code.goes.here
  }

がんを書く必要がある自分のRubyの構文パーサです。

でも真似のRubyを構築し、ブロックは、マクロとコンパイルへの既存のLispを構築します.

#B(some lisp (code goes here))

ると言っても良いと思いる

(lambda () (some lisp (code goes here)))

このページ かのことを思い出します。

他のヒント

ありきを再定義の書式でLispがコンパイラです。これを"リーダー-マクロ"の違いから、通常"コンパイラのマクロ"という考え方です。

Common Lispの内蔵施設を定義する新しい構文の読み手のマクロ処理する構文です。この処理にあたっては読み出し時間(される前にコンパイルまたは<エバール>)。知を定義するリーダーのマクロにCommon LispのCommon Lisp Hyperspec--だが読みたい Ch.2では、"書式"Ch.23日、"リーダー".(私として同じ施設がんとして親し--の スキーム源 のための アークプログラミング言語).

単純な例として、もう作ってみたいとしLisp用の巻きブレースなしるしをつけることになる。このことは、次のようなリーダー定義:

;; { and } become list delimiters, along with ( and ).
(set-syntax-from-char #\{ #\( )
(defun lcurly-brace-reader (stream inchar) ; this was way too easy to do.
  (declare (ignore inchar))
  (read-delimited-list #\} stream t))
(set-macro-character #\{ #'lcurly-brace-reader)

(set-macro-character #\} (get-macro-character #\) ))
(set-syntax-from-char #\} #\) )

;; un-lisp -- make parens meaningless
(set-syntax-from-char #\) #\] ) ; ( and ) become normal braces
(set-syntax-from-char #\( #\[ )

んで語Lispの{のような、それを}のようです。その作成機能lcurly-brace-reader るオリジナリティーの高い先端的な話まで見{で、ご利用 set-macro-character 割り当てる機能の{.それをしないといけないと考えていLispび)のように[と]では、意味のある書式]).

その他のものになにができるのは、例えば、 新しい文字列の構文 または[と]を同封のうえ、修正を行う表記を処理してS-表現です。

きものにとどまらず、このデバイスでは職務経歴書をア全体の構文を自分のマクロな文字をトリガーアクションリーダー、空のものを制限します。このほか、シンプルで飽きの来ない理由 ポール-グラハムその他 続いているLispが良いる言語で書くコンパイラです。

したらいいと思います。Lisp、ゃんもLispプログラマーが、その後のビット実験を語っという結論を出した後に括弧を開始いのない見えないときにコードがいいと思います。でも、以前の構文要素を作成しますs-exprs、マクロ、以下の語彙の形式のテキストのリストおよび括弧.

これは特別の場合はtrue利用いただきますの良いエディタを、インデントや書式と彩色(う設定の括弧のカラーも同様。

できない場合がございますの言語を完全に取得'Ruby'構文が必要なのです。感謝の言語の柔軟性をきと言う感じでは以下のRubyスタイルプログラミング'したい場合は、どのような意味です。

ごきげんよう、トメ子ですただの実証的な観察では"こうだ"と思っていましたのLisp啓発時間を実現します。

まり、新Lispしたい"をなくすべての括弧." で持続します。プロジェクトの構築に深刻な汎用グの書式は通常のS式のパーサかでもどこでも、プログラマに常に気を好むかが現在知覚"として括弧地獄である。" かに慣れるもののない話をうかがいたいです。まだ慣れていき、お願い致し可塑性のデフォルトの書式では、帰国語が一つの表現方法の他には特定のプログラミングの構築がっ能です。

もっとも、Lispに優れた基板のビルドメイン固有の言語である。だけどしない場合にはより良いものは、形式をサポートしています。

幸運を祈っています。

最高の説明のLispマクロでいいのといったらてのらさんは

https://www.youtube.com/watch?v=4NO83wZVT0A

から約55分です。このビデオの話によるピーターも当然見は、筆者の"実用Common Lispである"最高のLispの教科書があります。

意欲のためのLispマクロでは通常難しい説明をしないので、本当に来て、自らの状況でも長時間に存在する簡単なチュートリアルです。ピーターが出てくるといえる。;把握できますするというもので、適正な利用のLispマクロです。

問い:"きの変更機能の自然LISPによりオブジェクト指向論文".答えは、"イエス"である。実際、Lispただけのオブジェクト指向プログラミングでは驚くべきことではないからLispからのよりもはるか以前にオブジェクト指向プログラミング!しかしずつOOP1978年までにこちらにご入力くださいLispでは、マクロです。最終的には、Common Lispオブジェクトシステム(クロ)を開発し、非常に強力なオブジェクト指向プログラミングシステムでやるということで優雅にLisp.全体がロードでき延長として--何もない内蔵!●もっとマクロです。

Lispは全く異なる特徴"と呼ばれるリーダーのマクロ"は、が発行したり発見できるように、表面構文の言語です。利用のリーダーのマクロは、sublanguagesているCのようにRuby-like syntax.その変換テキストをLispになります。これらの国において広く採用されているのも現実Lispプログラマの中で、困難を延長するインタラクティブ環境を理解する新しい構文です。例えば、行をインデントコマンドのように惑わされ、新しい構文です。ばん元気なものEmacsが伸ばせるものとして始めたから新築した教について新しい語彙構文です。

通常のマクロ動作モニタリングシステムをサポートします。最も一般的には、これらのオブジェクトのリスト(このように形成木)、シンボルができるその他の物などの文字列として,超えるセットはハッシュテーブル、ユーザ定義オブジェなど。これらの構造と呼ばれる s-exps.

なので、読み込んだ場合、ソースファイル、おLispコンパイラの構文テキストをs-exps.マクロ動作することができます。この作品となって現れてくるもので、素晴らしい方の語学の精神のs-exps.

また、上記の構文解析処理できる拡張を通じて"リーダーのマクロ"できるようにカスタマイズのコンパイラがテキストのs-exps.私は提案します抱Lispの構文ではなく曲がるが、地下鉄からも近くて便利。

まラジオのガッツナイターの中で混乱したちがおLispの"機能性"とRubyのオブジェクト指向構文"を参照してください。お使いいただくことによって"オブジェクト指向構文"となるものの、Lispマルチパラダイムによる言語をサポートしますオブジェクト指向プログラミング extremelly ます。

ね"と言うとLispというのは、 Common Lisp.

であることをお偏見、 与Lisp誠実な行.

括弧地獄?I以上の括弧:

(function toto)

以:

function(toto);

(if tata (toto)
  (titi)
  (tutu))

以:

if (tata)
  toto();
else
{
  titi();
  tutu();
}

私が少なくなっているのをよく目にブラケット';'ものです。

うまいがいかくなるにはどうしたらよいか、専門のショコラティエできるようにすべて削除した居褐色のものからお気に入りのチョコレートケーキになります。

あり、根本的に変える値を指定した場合、も逃避"に括弧地獄".用する必要があるということを定義する新しいリーダー syntax.うリーダをマクロです。

い容疑者がそのレベルのLispノウハウをプログラムなどのマクロが必要となりますので、ご利用くださを語るときなくなると考えparenthese"地獄".I.。当時を知らないようにしまして受け入れていかもしれない。

したい場合はlispに見えるようにRubyを使用Rubyなどがある。

を採用することも可能ですRubyやPythonのものlispのような方法の一つである理由もこれまで培ってきた受け入れことを楽しみにしています。

この例ではどのようリーダーのマクロを延長することができますlispリーダーとの複合体のような仕事をするようになったXMLの洗:

http://common-lisp.net/project/cl-quasi-quote/present-class.html

この ユーザー図書館 統静的部品のXMLをUTF-8で符号化されたリテラルをバイト配列にコンパイル時に用意する書き込み配列を思い、ネットワークストリームです。ともに使用できる通常のlispマクロは、直交...の配置をカンマで区切文字に影響する部品定数および評価すべきで行います。

より詳細にご用意: http://common-lisp.net/project/cl-quasi-quote/

他のプロジェクトのためのCommon Lisp構文の拡張: http://common-lisp.net/project/cl-syntax-sugar/

@sparkes

時にはLISPの明確な言語の選択肢、すなわちEmacsます。私の使ってみましたRuby拡張Emacsてしまうことがありましたが、Emacsことができるように設計されて拡張したものですLISPいう意味でも使用するようになりました。

この難しい問題です。からlispでの構造に近い構文木(parse tree)の違いに多数のマクロを実施自身のミニ-言語パーサは発電機なクリアになっています。ものを除き、開閉paren、非常に簡単に終わるかに見えるものlispに似ているともいえよう。

一つのマクロを吹き飛ば私の心のコンパイル時の検証SQLインジェクションの要求に対してDBです。

一度きりと現れている全言語でコンパイル時にで面白いものを新しい視点でるまでの撮影ができ自分の足に興味深い新しい方法(レンダリング編集しない再現性でも簡単にデバッグの悪夢).

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top