Check-in [c0158c9281]
Not logged in
Overview
SHA1 Hash:c0158c9281093301acd135f0332f6da1e8f05722
Date: 2010-11-24 20:34:03
User: kinaba
Comment:document updated
Timelines: family | ancestors | descendants | both | trunk
Downloads: Tarball | ZIP archive
Other Links: files | file ages | manifest
Tags And Properties
Changes

Modified doc/_common.html from [ef6db0f6f8782d46] to [f3e3c7b7f7a68def].

22 22 23 The list of modules globaly used inside Polemy.<br><br> 23 The list of modules globaly used inside Polemy.<br><br> 24 24 25 </td></tr> 25 </td></tr> 26 <tr><td id="docfooter"> 26 <tr><td id="docfooter"> 27 Page was generated with 27 Page was generated with 28 <img src="candydoc/img/candydoc.gif" style="vertical-ali 28 <img src="candydoc/img/candydoc.gif" style="vertical-ali 29 on Wed Nov 24 19:09:32 2010 | 29 on Wed Nov 24 20:33:10 2010 30 30 31 </td></tr> 31 </td></tr> 32 </table> 32 </table> 33 </div> 33 </div> 34 <script> 34 <script> 35 explorer.packageExplorer.addModule("index"); 35 explorer.packageExplorer.addModule("index"); 36 explorer.packageExplorer.addModule("main"); 36 explorer.packageExplorer.addModule("main");

Modified doc/ast.html from [4f37b512b58aa99b] to [e60729d606cec00d].

563 <script>explorer.outline.decSymbolLevel();</script> 563 <script>explorer.outline.decSymbolLevel();</script> 564 564 565 565 566 </td></tr> 566 </td></tr> 567 <tr><td id="docfooter"> 567 <tr><td id="docfooter"> 568 Page was generated with 568 Page was generated with 569 <img src="candydoc/img/candydoc.gif" style="vertical-ali 569 <img src="candydoc/img/candydoc.gif" style="vertical-ali 570 on Wed Nov 24 19:09:32 2010 | 570 on Wed Nov 24 20:33:10 2010 571 571 572 </td></tr> 572 </td></tr> 573 </table> 573 </table> 574 </div> 574 </div> 575 <script> 575 <script> 576 explorer.packageExplorer.addModule("index"); 576 explorer.packageExplorer.addModule("index"); 577 explorer.packageExplorer.addModule("main"); 577 explorer.packageExplorer.addModule("main");

Modified doc/eval.html from [6f684a1106faa774] to [b923ea618ae1d22f].

128 <script>explorer.outline.decSymbolLevel();</script> 128 <script>explorer.outline.decSymbolLevel();</script> 129 129 130 130 131 </td></tr> 131 </td></tr> 132 <tr><td id="docfooter"> 132 <tr><td id="docfooter"> 133 Page was generated with 133 Page was generated with 134 <img src="candydoc/img/candydoc.gif" style="vertical-ali 134 <img src="candydoc/img/candydoc.gif" style="vertical-ali 135 on Wed Nov 24 19:09:32 2010 | 135 on Wed Nov 24 20:33:10 2010 136 136 137 </td></tr> 137 </td></tr> 138 </table> 138 </table> 139 </div> 139 </div> 140 <script> 140 <script> 141 explorer.packageExplorer.addModule("index"); 141 explorer.packageExplorer.addModule("index"); 142 explorer.packageExplorer.addModule("main"); 142 explorer.packageExplorer.addModule("main");

Modified doc/failure.html from [b03822e245636a24] to [80c8731cdbc62770].

178 <script>explorer.outline.decSymbolLevel();</script> 178 <script>explorer.outline.decSymbolLevel();</script> 179 179 180 180 181 </td></tr> 181 </td></tr> 182 <tr><td id="docfooter"> 182 <tr><td id="docfooter"> 183 Page was generated with 183 Page was generated with 184 <img src="candydoc/img/candydoc.gif" style="vertical-ali 184 <img src="candydoc/img/candydoc.gif" style="vertical-ali 185 on Wed Nov 24 19:09:32 2010 | 185 on Wed Nov 24 20:33:10 2010 186 186 187 </td></tr> 187 </td></tr> 188 </table> 188 </table> 189 </div> 189 </div> 190 <script> 190 <script> 191 explorer.packageExplorer.addModule("index"); 191 explorer.packageExplorer.addModule("index"); 192 explorer.packageExplorer.addModule("main"); 192 explorer.packageExplorer.addModule("main");

Modified doc/fresh.html from [f07559eb4d6cfc68] to [23033a1fbfc08c9c].

46 <script>explorer.outline.decSymbolLevel();</script> 46 <script>explorer.outline.decSymbolLevel();</script> 47 47 48 48 49 </td></tr> 49 </td></tr> 50 <tr><td id="docfooter"> 50 <tr><td id="docfooter"> 51 Page was generated with 51 Page was generated with 52 <img src="candydoc/img/candydoc.gif" style="vertical-ali 52 <img src="candydoc/img/candydoc.gif" style="vertical-ali 53 on Wed Nov 24 19:09:32 2010 | 53 on Wed Nov 24 20:33:10 2010 54 54 55 </td></tr> 55 </td></tr> 56 </table> 56 </table> 57 </div> 57 </div> 58 <script> 58 <script> 59 explorer.packageExplorer.addModule("index"); 59 explorer.packageExplorer.addModule("index"); 60 explorer.packageExplorer.addModule("main"); 60 explorer.packageExplorer.addModule("main");

Modified doc/index.html from [bd75516fd263e529] to [49fcca2a72fbb7a0].

284 以下のデータ型があります。 284 以下のデータ型があります。 285 </p> 285 </p> 286 <ul> 286 <ul> 287 <li>整数: <tt>0</tt>, <tt>123</tt>, <tt>456666666666666666666666666666666666 287 <li>整数: <tt>0</tt>, <tt>123</tt>, <tt>456666666666666666666666666666666666 288 <li>文字列: <tt>"hello, world!"</tt>, ...</li> 288 <li>文字列: <tt>"hello, world!"</tt>, ...</li> 289 <li>関数: <tt>fun(x){x+1}</tt></li> 289 <li>関数: <tt>fun(x){x+1}</tt></li> 290 <li>テーブル: <tt>{car: 1, cdr: {car: 2, cdr: {}}}</tt></li> 290 <li>テーブル: <tt>{car: 1, cdr: {car: 2, cdr: {}}}</tt></li> 291 <li>未定義値: (テーブルの、存在しないフィールドにアクセたりすると作れます)</li> | 291 <li>未定義値: (undefined。特殊なケー作られます)</li> 292 </ul> 292 </ul> 293 <p> 293 <p> 294 関数はいわゆる「クロージャ」です。静的スコープで外側の環境にアクセスできます。 294 関数はいわゆる「クロージャ」です。静的スコープで外側の環境にアクセスできます。 295 テーブルはいわゆるプロトタイプチェーンを持っていて、 295 テーブルはいわゆるプロトタイプチェーンを持っていて、 296 自分にないフィールドの場合は親に問い合わせが行く感じになっていますが、 296 自分にないフィールドの場合は親に問い合わせが行く感じになっていますが、 297 フィールドの書き換えがないので、これは特に意味ないかもしれない…。 297 フィールドの書き換えがないので、これは特に意味ないかもしれない…。 298 </p> 298 </p> > 299 <p> > 300 また、リストを扱うために、いわゆる「cons リスト」を使います。 > 301 空リストを <tt>{}</tt>、1個以上要素があるものを <tt>{car: 先頭要素, cdr: 二番目以降のリスト}</tt> > 302 という形で。この形でリストを扱わなければならないとい決まりはありませんが、 > 303 この形は特別扱いされて <tt>print</tt> で綺麗に出力されたります。 > 304 </p> 299 </dd> 305 </dd> 300 306 301 <script>explorer.outline.writeEnabled = true;</script> 307 <script>explorer.outline.writeEnabled = true;</script> 302 <dt><span class="decl"> 308 <dt><span class="decl"> 303 <span class="currsymbol">パターンマッチ</span> 309 <span class="currsymbol">パターンマッチ</span> 304 <script>explorer.outline.addDecl('パターンマッチ');</script> 310 <script>explorer.outline.addDecl('パターンマッチ');</script> 305 311 ................................................................................................................................................................................ 608 ) 614 ) 609 }; 615 }; 610 616 611 Here, x is a syntax tree but n is an actual integer. If you read carefully, 617 Here, x is a syntax tree but n is an actual integer. If you read carefully, 612 you should get what is going on. Basically, @macro can be considered like 618 you should get what is going on. Basically, @macro can be considered like 613 quasiquoting and @value to be an escape from it. 619 quasiquoting and @value to be an escape from it. 614 </pre> 620 </pre> > 621 <p> > 622 構文木がどのようなテーブルで渡されてくるかについてはソースドキュメントの > 623 <a href="http://www.kmonos.net/repos/polemy/doc/tip/doc/ast.html">polemy.ast</a> > 624 のページをご覧下さい。例えば変数名を表す <code>Var</code> ラスには、 > 625 継承の分も合わせて > 626 <tt><a href="http://www.kmonos.net/repos/polemy/doc/tip/doc/failure.html">LexPos > 627 と <tt>string name;</tt> の2つのメンバがあるので > 628 </p> > 629 <pre> > 630 { is: "Var", > 631 pos: {filename:"foo.pmy", lineno:123, column:45}, > 632 name: "x" } > 633 </pre> > 634 <p> > 635 こんな感じのテーブルになります。 > 636 クラス名が <tt>is</tt> フィールドに、メンバ変数はそのまま名前で入ります。 > 637 配列メンバは cons リストになって入ってきます。 > 638 </p> 615 </dd> 639 </dd> 616 640 617 <script>explorer.outline.writeEnabled = true;</script> 641 <script>explorer.outline.writeEnabled = true;</script> 618 <dt><span class="decl"> 642 <dt><span class="decl"> 619 <span class="currsymbol">微妙な挙動</span> 643 <span class="currsymbol">微妙な挙動</span> 620 <script>explorer.outline.addDecl('微妙な挙動');</script> 644 <script>explorer.outline.addDecl('微妙な挙動');</script> 621 645 ................................................................................................................................................................................ 776 <script>explorer.outline.decSymbolLevel();</script> 800 <script>explorer.outline.decSymbolLevel();</script> 777 801 778 802 779 </td></tr> 803 </td></tr> 780 <tr><td id="docfooter"> 804 <tr><td id="docfooter"> 781 Page was generated with 805 Page was generated with 782 <img src="candydoc/img/candydoc.gif" style="vertical-ali 806 <img src="candydoc/img/candydoc.gif" style="vertical-ali 783 on Wed Nov 24 19:09:31 2010 | 807 on Wed Nov 24 20:33:08 2010 784 808 785 </td></tr> 809 </td></tr> 786 </table> 810 </table> 787 </div> 811 </div> 788 <script> 812 <script> 789 explorer.packageExplorer.addModule("index"); 813 explorer.packageExplorer.addModule("index"); 790 explorer.packageExplorer.addModule("main"); 814 explorer.packageExplorer.addModule("main");

Modified doc/layer.html from [6466200d7c375c71] to [63d3b80a5cea1d9b].

88 88 89 89 90 <dd>Predefined layer for macro run (@lay() becomes AST)<br><br> 90 <dd>Predefined layer for macro run (@lay() becomes AST)<br><br> 91 91 92 </dd> 92 </dd> 93 93 94 <script>explorer.outline.writeEnabled = true;</script> 94 <script>explorer.outline.writeEnabled = true;</script> 95 <dt><span class="decl"> | 95 <dt><span class="decl">bool 96 <span class="currsymbol">AstLayer</span> | 96 <span class="currsymbol">isUserDefinedLayer</span> 97 <script>explorer.outline.addDecl('AstLayer');</script> | 97 <script>explorer.outline.addDecl('isUserDefinedLayer');</script> 98 98 > 99 (Layer <span class="funcparam">lay</span>); 99 </span></dt> 100 </span></dt> 100 <script>explorer.outline.writeEnabled = false;</script> 101 <script>explorer.outline.writeEnabled = false;</script> 101 102 102 103 103 <dd>Predefined layer for macro run (never invoke macro)<br><br> | 104 <dd>True if it is a user-defined layer<br><br> 104 105 105 </dd> 106 </dd> 106 107 107 <script>explorer.outline.writeEnabled = true;</script> 108 <script>explorer.outline.writeEnabled = true;</script> 108 <dt><span class="decl">bool 109 <dt><span class="decl">bool 109 <span class="currsymbol">isASTLayer</span> 110 <span class="currsymbol">isASTLayer</span> 110 <script>explorer.outline.addDecl('isASTLayer');</script> 111 <script>explorer.outline.addDecl('isASTLayer');</script> ................................................................................................................................................................................ 149 <script>explorer.outline.decSymbolLevel();</script> 150 <script>explorer.outline.decSymbolLevel();</script> 150 151 151 152 152 </td></tr> 153 </td></tr> 153 <tr><td id="docfooter"> 154 <tr><td id="docfooter"> 154 Page was generated with 155 Page was generated with 155 <img src="candydoc/img/candydoc.gif" style="vertical-ali 156 <img src="candydoc/img/candydoc.gif" style="vertical-ali 156 on Wed Nov 24 19:09:32 2010 | 157 on Wed Nov 24 20:33:10 2010 157 158 158 </td></tr> 159 </td></tr> 159 </table> 160 </table> 160 </div> 161 </div> 161 <script> 162 <script> 162 explorer.packageExplorer.addModule("index"); 163 explorer.packageExplorer.addModule("index"); 163 explorer.packageExplorer.addModule("main"); 164 explorer.packageExplorer.addModule("main");

Modified doc/lex.html from [d95037ff9be23025] to [e1ae052f9e9d69b0].

307 <script>explorer.outline.decSymbolLevel();</script> 307 <script>explorer.outline.decSymbolLevel();</script> 308 308 309 309 310 </td></tr> 310 </td></tr> 311 <tr><td id="docfooter"> 311 <tr><td id="docfooter"> 312 Page was generated with 312 Page was generated with 313 <img src="candydoc/img/candydoc.gif" style="vertical-ali 313 <img src="candydoc/img/candydoc.gif" style="vertical-ali 314 on Wed Nov 24 19:09:32 2010 | 314 on Wed Nov 24 20:33:10 2010 315 315 316 </td></tr> 316 </td></tr> 317 </table> 317 </table> 318 </div> 318 </div> 319 <script> 319 <script> 320 explorer.packageExplorer.addModule("index"); 320 explorer.packageExplorer.addModule("index"); 321 explorer.packageExplorer.addModule("main"); 321 explorer.packageExplorer.addModule("main");

Modified doc/main.html from [d4c8f156867b63c7] to [736095fc16c333ba].

62 <script>explorer.outline.decSymbolLevel();</script> 62 <script>explorer.outline.decSymbolLevel();</script> 63 63 64 64 65 </td></tr> 65 </td></tr> 66 <tr><td id="docfooter"> 66 <tr><td id="docfooter"> 67 Page was generated with 67 Page was generated with 68 <img src="candydoc/img/candydoc.gif" style="vertical-ali 68 <img src="candydoc/img/candydoc.gif" style="vertical-ali 69 on Wed Nov 24 19:09:32 2010 | 69 on Wed Nov 24 20:33:10 2010 70 70 71 </td></tr> 71 </td></tr> 72 </table> 72 </table> 73 </div> 73 </div> 74 <script> 74 <script> 75 explorer.packageExplorer.addModule("index"); 75 explorer.packageExplorer.addModule("index"); 76 explorer.packageExplorer.addModule("main"); 76 explorer.packageExplorer.addModule("main");

Modified doc/parse.html from [6f4d8d046b442e49] to [84e792c2da714358].

56 <script>explorer.outline.decSymbolLevel();</script> 56 <script>explorer.outline.decSymbolLevel();</script> 57 57 58 58 59 </td></tr> 59 </td></tr> 60 <tr><td id="docfooter"> 60 <tr><td id="docfooter"> 61 Page was generated with 61 Page was generated with 62 <img src="candydoc/img/candydoc.gif" style="vertical-ali 62 <img src="candydoc/img/candydoc.gif" style="vertical-ali 63 on Wed Nov 24 19:09:32 2010 | 63 on Wed Nov 24 20:33:10 2010 64 64 65 </td></tr> 65 </td></tr> 66 </table> 66 </table> 67 </div> 67 </div> 68 <script> 68 <script> 69 explorer.packageExplorer.addModule("index"); 69 explorer.packageExplorer.addModule("index"); 70 explorer.packageExplorer.addModule("main"); 70 explorer.packageExplorer.addModule("main");

Modified doc/repl.html from [a4f8734ecfa16cea] to [4efdaf2835d713ce].

156 <script>explorer.outline.decSymbolLevel();</script> 156 <script>explorer.outline.decSymbolLevel();</script> 157 157 158 158 159 </td></tr> 159 </td></tr> 160 <tr><td id="docfooter"> 160 <tr><td id="docfooter"> 161 Page was generated with 161 Page was generated with 162 <img src="candydoc/img/candydoc.gif" style="vertical-ali 162 <img src="candydoc/img/candydoc.gif" style="vertical-ali 163 on Wed Nov 24 19:09:32 2010 | 163 on Wed Nov 24 20:33:10 2010 164 164 165 </td></tr> 165 </td></tr> 166 </table> 166 </table> 167 </div> 167 </div> 168 <script> 168 <script> 169 explorer.packageExplorer.addModule("index"); 169 explorer.packageExplorer.addModule("index"); 170 explorer.packageExplorer.addModule("main"); 170 explorer.packageExplorer.addModule("main");

Modified doc/runtime.html from [c37f8cec8f6ca249] to [efdc8bef87ec66a6].

42 <script>explorer.outline.decSymbolLevel();</script> 42 <script>explorer.outline.decSymbolLevel();</script> 43 43 44 44 45 </td></tr> 45 </td></tr> 46 <tr><td id="docfooter"> 46 <tr><td id="docfooter"> 47 Page was generated with 47 Page was generated with 48 <img src="candydoc/img/candydoc.gif" style="vertical-ali 48 <img src="candydoc/img/candydoc.gif" style="vertical-ali 49 on Wed Nov 24 19:09:32 2010 | 49 on Wed Nov 24 20:33:10 2010 50 50 51 </td></tr> 51 </td></tr> 52 </table> 52 </table> 53 </div> 53 </div> 54 <script> 54 <script> 55 explorer.packageExplorer.addModule("index"); 55 explorer.packageExplorer.addModule("index"); 56 explorer.packageExplorer.addModule("main"); 56 explorer.packageExplorer.addModule("main");

Modified doc/test.html from [adfbdf0e13d183a2] to [27184f7aacc74186].

143 <script>explorer.outline.decSymbolLevel();</script> 143 <script>explorer.outline.decSymbolLevel();</script> 144 144 145 145 146 </td></tr> 146 </td></tr> 147 <tr><td id="docfooter"> 147 <tr><td id="docfooter"> 148 Page was generated with 148 Page was generated with 149 <img src="candydoc/img/candydoc.gif" style="vertical-ali 149 <img src="candydoc/img/candydoc.gif" style="vertical-ali 150 on Wed Nov 24 19:09:32 2010 | 150 on Wed Nov 24 20:33:10 2010 151 151 152 </td></tr> 152 </td></tr> 153 </table> 153 </table> 154 </div> 154 </div> 155 <script> 155 <script> 156 explorer.packageExplorer.addModule("index"); 156 explorer.packageExplorer.addModule("index"); 157 explorer.packageExplorer.addModule("main"); 157 explorer.packageExplorer.addModule("main");

Modified doc/tricks.html from [5661c0b00c83f9dd] to [5816ccc4efa21149].

232 <script>explorer.outline.decSymbolLevel();</script> 232 <script>explorer.outline.decSymbolLevel();</script> 233 233 234 234 235 </td></tr> 235 </td></tr> 236 <tr><td id="docfooter"> 236 <tr><td id="docfooter"> 237 Page was generated with 237 Page was generated with 238 <img src="candydoc/img/candydoc.gif" style="vertical-ali 238 <img src="candydoc/img/candydoc.gif" style="vertical-ali 239 on Wed Nov 24 19:09:32 2010 | 239 on Wed Nov 24 20:33:10 2010 240 240 241 </td></tr> 241 </td></tr> 242 </table> 242 </table> 243 </div> 243 </div> 244 <script> 244 <script> 245 explorer.packageExplorer.addModule("index"); 245 explorer.packageExplorer.addModule("index"); 246 explorer.packageExplorer.addModule("main"); 246 explorer.packageExplorer.addModule("main");

Modified doc/value.html from [925e1ae13e3ace40] to [9601d3816a1aa4af].

162 <script>explorer.outline.decSymbolLevel();</script> 162 <script>explorer.outline.decSymbolLevel();</script> 163 163 164 164 165 </td></tr> 165 </td></tr> 166 <tr><td id="docfooter"> 166 <tr><td id="docfooter"> 167 Page was generated with 167 Page was generated with 168 <img src="candydoc/img/candydoc.gif" style="vertical-ali 168 <img src="candydoc/img/candydoc.gif" style="vertical-ali 169 on Wed Nov 24 19:09:32 2010 | 169 on Wed Nov 24 20:33:10 2010 170 170 171 </td></tr> 171 </td></tr> 172 </table> 172 </table> 173 </div> 173 </div> 174 <script> 174 <script> 175 explorer.packageExplorer.addModule("index"); 175 explorer.packageExplorer.addModule("index"); 176 explorer.packageExplorer.addModule("main"); 176 explorer.packageExplorer.addModule("main");

Modified doc/valueconv.html from [2aa3eeff1e9266f3] to [a3104ec3e37a093d].

84 <script>explorer.outline.decSymbolLevel();</script> 84 <script>explorer.outline.decSymbolLevel();</script> 85 85 86 86 87 </td></tr> 87 </td></tr> 88 <tr><td id="docfooter"> 88 <tr><td id="docfooter"> 89 Page was generated with 89 Page was generated with 90 <img src="candydoc/img/candydoc.gif" style="vertical-ali 90 <img src="candydoc/img/candydoc.gif" style="vertical-ali 91 on Wed Nov 24 19:09:32 2010 | 91 on Wed Nov 24 20:33:10 2010 92 92 93 </td></tr> 93 </td></tr> 94 </table> 94 </table> 95 </div> 95 </div> 96 <script> 96 <script> 97 explorer.packageExplorer.addModule("index"); 97 explorer.packageExplorer.addModule("index"); 98 explorer.packageExplorer.addModule("main"); 98 explorer.packageExplorer.addModule("main");

Modified index.dd from [07bae30af3901ecf] to [b4c241e12eddc95c].

199 以下のデータ型があります。 199 以下のデータ型があります。 200 </p> 200 </p> 201 <ul> 201 <ul> 202 <li>整数: <tt>0</tt>, <tt>123</tt>, <tt>456666666666666666666666666666666666 202 <li>整数: <tt>0</tt>, <tt>123</tt>, <tt>456666666666666666666666666666666666 203 <li>文字列: <tt>"hello, world!"</tt>, ...</li> 203 <li>文字列: <tt>"hello, world!"</tt>, ...</li> 204 <li>関数: <tt>fun(x){x+1}</tt></li> 204 <li>関数: <tt>fun(x){x+1}</tt></li> 205 <li>テーブル: <tt>{car: 1, cdr: {car: 2, cdr: {}}}</tt></li> 205 <li>テーブル: <tt>{car: 1, cdr: {car: 2, cdr: {}}}</tt></li> 206 <li>未定義値: (テーブルの、存在しないフィールドにアクセたりすると作れます)</li> | 206 <li>未定義値: (undefined。特殊なケー作られます)</li> 207 </ul> 207 </ul> 208 <p> 208 <p> 209 関数はいわゆる「クロージャ」です。静的スコープで外側の環境にアクセスできます。 209 関数はいわゆる「クロージャ」です。静的スコープで外側の環境にアクセスできます。 210 テーブルはいわゆるプロトタイプチェーンを持っていて、 210 テーブルはいわゆるプロトタイプチェーンを持っていて、 211 自分にないフィールドの場合は親に問い合わせが行く感じになっていますが、 211 自分にないフィールドの場合は親に問い合わせが行く感じになっていますが、 212 フィールドの書き換えがないので、これは特に意味ないかもしれない…。 212 フィールドの書き換えがないので、これは特に意味ないかもしれない…。 213 </p> 213 </p> > 214 <p> > 215 また、リストを扱うために、いわゆる「cons リスト」を使います。 > 216 空リストを <tt>{}</tt>、1個以上要素があるものを <tt>{car: 先頭要素, cdr: 二番目以降のリスト}</tt> > 217 という形で。この形でリストを扱わなければならないとい決まりはありませんが、 > 218 この形は特別扱いされて <tt>print</tt> で綺麗に出力されたります。 > 219 </p> 214 )) 220 )) 215 $(SECTION パターンマッチ, $(SECBODY 221 $(SECTION パターンマッチ, $(SECBODY 216 <p> 222 <p> 217 適当に実装されたパターンマッチがあります。 223 適当に実装されたパターンマッチがあります。 218 リストの 2n 番目と 2n+1 番目を足して長さを半分にする関数: 224 リストの 2n 番目と 2n+1 番目を足して長さを半分にする関数: 219 </p> 225 </p> 220 <pre> 226 <pre> ................................................................................................................................................................................ 487 ) 493 ) 488 }; 494 }; 489 495 490 Here, x is a syntax tree but n is an actual integer. If you read carefully, 496 Here, x is a syntax tree but n is an actual integer. If you read carefully, 491 you should get what is going on. Basically, @macro can be considered like 497 you should get what is going on. Basically, @macro can be considered like 492 quasiquoting and @value to be an escape from it. 498 quasiquoting and @value to be an escape from it. 493 </pre> 499 </pre> > 500 <p> > 501 構文木がどのようなテーブルで渡されてくるかについてはソースドキュメントの > 502 <a href="http://www.kmonos.net/repos/polemy/doc/tip/doc/ast.html">polemy.ast</a> > 503 のページをご覧下さい。例えば変数名を表す <code>Var</code> ラスには、 > 504 継承の分も合わせて > 505 <tt><a href="http://www.kmonos.net/repos/polemy/doc/tip/doc/failure.html">LexPos > 506 と <tt>string name;</tt> の2つのメンバがあるので > 507 </p> > 508 <pre> > 509 { is: "Var", > 510 pos: {filename:"foo.pmy", lineno:123, column:45}, > 511 name: "x" } > 512 </pre> > 513 <p> > 514 こんな感じのテーブルになります。 > 515 クラス名が <tt>is</tt> フィールドに、メンバ変数はそのまま名前で入ります。 > 516 配列メンバは cons リストになって入ってきます。 > 517 </p> 494 )) 518 )) 495 $(SECTION 微妙な挙動, $(SECBODY 519 $(SECTION 微妙な挙動, $(SECBODY 496 <pre> 520 <pre> 497 (rawmacro) レイヤの話 521 (rawmacro) レイヤの話 498 522 499 [[limitations]] 523 [[limitations]] 500 524