1 名前:nanashi de fault [02/05/12 02:05] 前スレ1より >yaccやlexの使い方やら言語仕様やらの話題。 前スレ 【コンパイラ・スクリプトエンジン】相談室 pc.2ch.net/test/read.cgi/tech/981672957/ 前スレアーカイブ(かちゅ用) www.1me.jp/hp/prg_c-s_lab 前スレに張られたリンク + x >>2-6
680 名前:デフォルトの名無しさん mailto:sage [03/05/28 05:29] >>674 正直、最近のマシンは最適化してやらないと実力が出ないから コンパイラ/インタプリタでの最適化は重要だし、 処理系のコード的にも非常に大きな部分を占めてるんだが。
681 名前:デフォルトの名無しさん mailto:sage [03/05/28 05:36] >>680 追伸: オプションなのは最適化なんてしなくていいってコトじゃなくて 様々な最適化技法がプログラムの性質によってそれぞれ有効度があり、 あまり効かなかったり却って遅くなるような場合に外したりパラメータを調節するのが目的。 (昔はデバッグを簡単にする目的もあったけど最近のデバッガは優秀だから 最適化されていてもデバッグできたりするらしいね。)
682 名前:デフォルトの名無しさん mailto:sage [03/05/28 06:00] ほう。最近のデバッガは、最適化で消えた変数も追いかけられるようになったりするの?
683 名前:デフォルトの名無しさん mailto:sage [03/05/28 07:37] 消えたといっても、スタックローカルからレジスタに移っただけだろ? だからレジスタにある間は追いかけられる。
684 名前:デフォルトの名無しさん mailto:sage [03/05/28 10:30] 最適化について知らないなら、まず調べてから書いてください。
685 名前:デフォルトの名無しさん mailto:sage [03/05/28 11:32] 681が言ってるのはインライン展開とか実行順変更程度なら大丈夫という話 682が言ってるのは完全に消えた変数の話 683が言ってるのはレジスタ最適化の話 684が言ってるのは・・・・?
686 名前:山崎渉 mailto:(^^) [03/05/28 12:35] ∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉
687 名前:デフォルトの名無しさん mailto:sage [03/05/28 15:24] Compiler Design in C www.amazon.com/exec/obidos/tg/detail/-/0131550454/ www.holub.com/software/compiler.design.in.c.html て読破したかたいらっしゃいますか? 古すぎますかね。
688 名前:名無し@沢村 [03/05/28 16:00] おまいら、『コンパイラ・スクリプトエンジン』について相談してみろ?
689 名前:674 mailto:sage [03/05/28 17:41] >>680 672があまりにいいかげんなこと言っていることを踏まえての内容です。 実用性から言えば、680,681に書かれたことは誰でも認める常識かと。
690 名前:デフォルトの名無しさん mailto:sage [03/05/28 17:44] だから沢村に関わるなとあれ程言ったのに
691 名前:デフォルトの名無しさん mailto:sage [03/05/29 00:33] ここには↓を解説できる者はおらんのか? memory to memory SICD machine chemical abstract machine categorical abstract machine while-if machine
692 名前:デフォルトの名無しさん mailto:sage [03/05/29 00:49] >>691 つーかどっから拾ってきたの?論文読めよ。 名前間違ってるのもあるし。
693 名前:名無し@沢村 [03/05/29 05:08] おまいらよ、ここで『コンパイラ・スクリプトエンジン』について知ったかで語ってるやつは多いが、 その割りには世に『コンパイラ・スクリプトエンジン』はそれほど多く出てないが…? みんな自分だけで使ってんの? それとも起動したと同時に終了してしまうコンソールアプリケーション?
694 名前:デフォルトの名無しさん mailto:sage [03/05/29 05:18] 自分のアプリケーション用だろ。 はじめから世に出すつもりで作っていない。
695 名前:デフォルトの名無しさん [03/05/29 07:34] 世に出してほすぃ 設計から実装まですべてさらけだしてほすぃ
696 名前:デフォルトの名無しさん mailto:sage [03/05/29 07:42] さらけ出てるじゃない >>241 >>487
697 名前:デフォルトの名無しさん mailto:sage [03/05/29 08:49] 自分のプログラムにちょっとしたマクロを実装できたらいいなあ〜 って類がこのスレの対象だろ。
698 名前:デフォルトの名無しさん mailto:sage [03/05/29 09:53] >>693 > それとも起動したと同時に終了してしまうコンソールアプリケーション? こんなやつかW? int main() {return 0;}
699 名前:デフォルトの名無しさん mailto:sage [03/05/29 14:28] >>697 最適化に拘らないならXMLとXMLパーサーを使ってみるという選択は? (APIはSAXでもDOMでもお好みで。) 文法の自由度は減るけど ちょっとしたものなら自分でパーサー書くより楽だよ。 例えばmakeと同じような仕事をするANT(だったっけ?)の プロジェクトファイル(だったっけ?)はXMLらしいぞー(じゃー、ゴボゴボゴボ)。
700 名前:デフォルトの名無しさん mailto:sage [03/05/29 14:42] >>699 続き 入力にフォーム、出力はスタイルファイル(CSSでもXSLでも)とでもすれば偽IDE環境も簡単w。 またあるいは、かつてWEB(だっけ?今文献は引越しダンボールの中なんで)という TeX+Pascalの文芸的プログラミングに憧れた人にもXMLマークアップでプログラミング言語というのは それなりに面白い選択かと。
701 名前:デフォルトの名無しさん mailto:sage [03/05/29 17:52] >>699 XMLなんてクソ
702 名前:名無し@沢村 [03/05/29 18:53] >>698 コンソールアプリケーションって、たいがい起動したと同時に終了するだろ?
703 名前:名無し@沢村 [03/05/29 18:56] >>698 てか、コンソールアプリケーションって、一応処理はするんだが、起動して処理をして終了までが、あっという間だから、起動したと同時に終了するように見えるんだな。
704 名前:デフォルトの名無しさん mailto:sage [03/05/29 19:25] 名無し@沢村はどんな『コンパイラ・スクリプトエンジン』を作っているのかな?
705 名前:デフォルトの名無しさん mailto:sage [03/05/29 19:43] >>701 何故ぇ?w
706 名前:デフォルトの名無しさん mailto:sage [03/05/29 19:47] >>702-703 ( ´_ゝ`)
707 名前:デフォルトの名無しさん mailto:sage [03/05/29 20:58] >>699 素から書いたら面倒だけどyacc/lexとかツール使うと工数はxmlと殆ど変わらないと思うけど。 むしろ切り出した後のエラーチェックとか加工とかがxmlだと面倒だなぁとか感じたりするんですけど。
708 名前:名無し@沢村 [03/05/29 21:01] >>704 おれは、起動、コンパイル、実行、終了までが一瞬のうちに終わるスクリプト言語をつくったよ。 コンソールアプリケーションでね。
709 名前:デフォルトの名無しさん mailto:sage [03/05/29 21:03] >>708 int main() {return 0;} が実行できるスクリプトか? すばらしい(藁)
710 名前:デフォルトの名無しさん mailto:sage [03/05/29 21:18] Parrotでいいじゃんよ
711 名前:デフォルトの名無しさん mailto:sage [03/05/29 21:59] >>707 エラーチェックはXML Schema + 検証機能つきパーサで。 切り出し&加工はDOMでやれば楽かも。 書ける言語がXML整形式の範囲に縛られるわけだから なにがなんでもXMLとは思わないけど、文書としても利用されるような 宣言的なスクリプト(例えばモジュールの依存関係を記述するメイク・ファイルや プロジェクトファイルみたいなのとか、環境設定とか、各種ポリシーの記述とか、 各種シーンの記述とか…。)にはいいかなと。 私自身はとあるTRPGのシナリオを記述する言語につかえる 語彙(XML世界におけるマークアップ文法のライブラリ)を 趣味で書いてみているところ。実行系はたぶんJavaで書くと思うけど。
712 名前:デフォルトの名無しさん mailto:sage [03/05/30 07:31] 行単位、スペース区切りでいいじゃん。
713 名前:デフォルトの名無しさん [03/05/30 10:57] >>712 確かにそれが一番便利w 設定ファイルの読み込みや簡単なスクリプトでバッチ処理するときは最強。 しかし、より高機能なものを求めてコンパイラが欲しいのだから そのような提案は無意味
714 名前:フォールトの名無しさん [03/05/30 11:33] オブジェクト指向言語を作ってみたいのですが、良い教科書など 無いでしょうか? 一応、ドシロウトではなくて、括弧の使える四則演算電卓を作った 実績があります(C言語を用いて3ヶ月ほどで開発しました)。 その辺を踏まえて、オブジェクト指向言語の実装に関する、標準的 な書籍なりペーパーなりを紹介していただけないでしょうか? また、このような自作言語に継続的な利用者が現れることを期待 するのですが、どのような場で、どの程度の進捗状況で発表すれ ば良いのか見当がつきません。 成功した開発プロジェクトの実施スキームについて紹介していた だけないでしょうか? せっかく開発する予定の言語なので、できれば世界中の開発者に 使ってもらいたい、プログラミングの概念を根底から覆す提案を したい、と言うのが私の願いです。
715 名前:デフォルトの名無しさん mailto:sage [03/05/30 12:06] 夢が大きくていいけどさ、まずは凝った作りじゃなくて、 もっと単純なコンパイラを練習として作ってみたら? それならこのスレに情報もたくさんあるし。
716 名前:デフォルトの名無しさん mailto:sage [03/05/30 12:09] >>714 がんがれ!!
717 名前:デフォルトの名無しさん mailto:sage [03/05/30 12:39] >>714 Tiger本じゃだめ?
718 名前:フォールトの名無しさん [03/05/30 13:05] >>717 >Tiger本じゃだめ? ISBNコードわかります?
719 名前:デフォルトの名無しさん mailto:sage [03/05/30 13:13] >>714 www.ruby-lang.org/ja/ ソース嫁
720 名前:フォールトの名無しさん [03/05/30 13:25] >>717 Webで検索したらそれらしい本「ISBN 0-521-58388-8」 が見つかりましたが、洋書のため書店での入手が難しく、 あきらめざる得ません(トイレで読むのに丁度よさそうな レベルの本なのに残念です)。 日本で入手容易な、翻訳本など無いでしょうか? >>719 このプロジェクトが終了してからじっくり読んでみたいと 思います。
721 名前:デフォルトの名無しさん mailto:sage [03/05/30 13:35] >プログラミングの概念を根底から覆す提案 って何かな?別にプログラミング言語でなくても、日本語でも表現できるはず。
722 名前:デフォルトの名無しさん mailto:sage [03/05/30 14:50] >>718 著者のページ: www.cs.princeton.edu/~appel/modern/
723 名前:デフォルトの名無しさん mailto:sage [03/05/30 14:52] >>721 ま、そりゃそうだが、コードで語るってのもカコイイ ・・・かも知れないw。
724 名前:フォールトの名無しさん [03/05/30 16:32] >>721 >>プログラミングの概念を根底から覆す提案 >って何かな?別にプログラミング言語でなくても、日本語でも表現できるはず。 まるで、具体的な計画を持たない香具師のように聞こえてしまう じゃないか(はぁ)。。。この場で核心となるアイディアや 技術を披露するのは、未だ一寸早いと思う。私の考えに基づいた 言語仕様や実装方法が世間に受け入れられるためには、この パラダイムギャップを埋めるための下地が不充分です。
725 名前:_ mailto:sage [03/05/30 16:33] homepage.mac.com/hiroyuki43/hankaku06.html
726 名前:デフォルトの名無しさん mailto:sage [03/05/30 16:40] >>724 と思うなら、まずプロトタイプでも作ってみるしかないんじゃないか。
727 名前:デフォルトの名無しさん mailto:sage [03/05/30 20:28] >>724 どうせ、他に誰か1000人くらいは考えたことがある案だから気にするな。
728 名前:デフォルトの名無しさん mailto:sage [03/05/31 01:55] FPGAの発想を応用して、VMを高速化
729 名前:デフォルトの名無しさん [03/05/31 18:20] 『システムソフトウェアプログラミング ― コンパイラの設計法と並行処理の基礎』 デイビッド クラーク (著) ってのもあるぞ。個人的にはお世話になりました。
730 名前:デフォルトの名無しさん mailto:sage [03/05/31 18:24] >>728 PS3
731 名前:ろうひ男爵 mailto:sage [03/06/05 02:06] >>721 自分的には、 今後はHTのおかげで、ディスクトップレベルででも 16CPU(物理的ではなくね)とか実装される その後、256CPUとか実装されて、 ソフトウェアによって4CPUとか使われるようになる。 オブジェクト指向でつくられたプログラムで、 オブジェクト単位でCPUが割り振られるとか。 (すでにやってそうですね)
732 名前:デフォルトの名無しさん mailto:sage [03/06/05 10:05] >>731 > オブジェクト指向でつくられたプログラムで、 > オブジェクト単位でCPUが割り振られるとか。 CPU間のスイッチが多すぎて激しく遅くなりそうな。
733 名前:ろうひ男爵 mailto:sage [03/06/05 12:17] >>732 メモリーもシェアメモリー部分だけ共有で、 1CPUあたり1GB位ずつ個別に持ってたりとか。 これ以上はすれ違いですね。スミマセン
734 名前:デフォルトの名無しさん [03/06/10 15:09] lexの勉強をしています。 入力先の切り替えをするとき、 AT&T lexの場合は、input()とunput()を再定義する必要がありますが、 flexの場合、YY_INPUTの再定義だけで切り替えができます。 これは、flexが文字の返却をしないアルゴリズムで動作しているとのことでしょうか?
735 名前:直リン [03/06/10 15:13] homepage.mac.com/yuuka20/
736 名前:デフォルトの名無しさん [03/06/10 18:34] >>734 flexの実装については知らないけど、自前で文字バッファ持っていれば unputはいらないでしょう。 lexical analyzerの本質からいって1文字先読みは避けられません。
737 名前:734 [03/06/10 19:42] >>736 そうですよね。 YY_INPUTは、flex側のバッファに文字列をコピーして渡すから、 後はflexの内部バッファの問題になるでしょうね。 確かに文字の返却なしってのは無理かw
738 名前:デフォルトの名無しさん [03/06/10 23:48] >>731 > オブジェクト指向でつくられたプログラムで、 > オブジェクト単位でCPUが割り振られるとか。 ここのJ3Cなんか近いかも? www.nk.rim.or.jp/~jun/j3w/
739 名前:デフォルトの名無しさん [03/06/11 18:33] yaccを使おうとしたら、liby.aがないことに気がつく。 どうしてyaccが入っているのにliby.aがないのかと小一時間・・・ findしてもどこにもないし・・・馬犬 目 ぽ..._〆(゚▽゚*)
740 名前:739 [03/06/11 19:01] www.yuge.ac.jp/home/~nagao/teaching/Compiler/YaccLex/ > Linuxでは liby.a(Yacc用のダミーの yyerror,main)が提供されていません。 > そのため、自分で書く必要があります。 最初からないのね・・・
741 名前:100人に1人 mailto:age [03/06/11 19:16] ◎人の嫌がることをズケッと言うのはこんな奴! <アスペルガー症候群(自閉症スペクトラム)←脳の機能的疾患(遺伝が要因)> ●変化を嫌う web.kyoto-inet.or.jp/org/atoz3/kado/book1/Williams-Asp.htm ●接し方のルールがわからず無邪気に周囲の人に対して迷惑なことをしてしまうことがある。人を傷つけるということには鈍感(相手の立場に立って考えられない)。 ●パターン的行動、生真面目すぎて融通が利かない 毎朝の通学電車では同じホームの同じ場所から、同じ時間の同じ号車に乗ることに決めていたりする。パターンを好むということは反復を厭わないことでもある。 ●アスペルガー症候群の子どもは(大人も)感覚刺激に対して敏感。敏感さは聴覚、視覚、味覚、嗅覚、温痛覚などのいずれの感覚の敏感さもありえる(特に視覚が敏感)。 ●アスペルガー症候群の子ども(大人も)は予測できないことや変化に対して苦痛を感じることが多い。 www.autism.jp/l-02-03-aspe3.htm ●独り言を言うことが多い(考えていることを口に出す) ●物事をいつまでも同じにしておこうとする欲求が強く、そうでないと非常に不安。いわゆる「こだわり」。 ●自発的に行動することが少なく、興味の幅が狭い ●物まねをしているような不自然な言語表現 ●自閉症スペクトラム全体としては一万人に91人(およそ100人に1人)。 www.ypdc.net/asuperugar.htm ★自閉症スペクトラムの考え方(アスペルガーに至らない気質の偏りもある(遺伝性)) www.imaizumi-web.com/030413.html ★アスペルガー症候群(自閉症スペクトラム)かどうかのテスト twitwi.s10.xrea.com/psy/add.htm www.geocities.co.jp/Beautycare/5917/as/marksheetmake.html
742 名前:デフォルトの名無しさん mailto:sage [03/06/11 19:46] >>740 liby.aは、あっても中身は無いも同然ですしね、昔は色々入っていたんでしょうか? 古いyaccを知っている人とかいるかな?
743 名前:名無し@沢村 [03/06/11 20:04] コンパイラやスクリプトエンジンをつくろうとしているおまいらよ、夢を見るのはいいことだぞ!! おまいらよ、いろいろコンパイラやスクリプトエンジンの構想を練ってみろ? 多いに夢を見てみろ? そしてつかの間の自己満足にひたってみろ? おまいらよ、夢を見るのはいいことだぞ!!
744 名前:デフォルトの名無しさん mailto:sage [03/06/11 20:26] RubyとかC#とかF#とかMixJuiceとか、そんなレベルじゃない、 もっとぶっ飛んだ未来の言語はありませんか?(´・ω・`)
745 名前:デフォルトの名無しさん mailto:sage [03/06/11 20:43] unlambdaとかは?<ぶっとんだ
746 名前:デフォルトの名無しさん mailto:sage [03/06/11 22:37] ということは、BrainFuckもか?
747 名前:デフォルトの名無しさん mailto:sage [03/06/11 23:44] 別に普通だが
748 名前:デフォルトの名無しさん [03/06/12 00:19] >>739 こんなもんだっけ?msgには\n含まれてたかな?忘れてしまったが。 int main(int argc, char **argv) { return yyparse(); } int yyerror(char *msg) { fprintf(stderr, "%s\n", msg); } もっともこんな手抜きのmainやyyerrorはいずれ捨てることになるんだから、 はじめからちゃんと自分で書きましょう。
749 名前:デフォルトの名無しさん mailto:sage [03/06/12 00:26] -Dyyparse=main -Dyyerror=abort
750 名前:739 [03/06/12 19:42] >>748 liby.aは、740のリンク先から作成しますた。 確かに実用上は自分で書かないとだめぽ ところで、lexにせよyaccにせよ、内部の挙動を考慮して使う必要があるのですね。 使い方を忘れると、訳が分からなくなりそう・・・
751 名前:デフォルトの名無しさん [03/06/12 19:49] >>744 CPon
752 名前:751 [03/06/13 13:45] 俺が書きこんだスレっていっつもレスが少なくなるんだけどなんでだろ?
753 名前:デフォルトの名無しさん [03/06/13 21:40] >>752 CPonって何?
754 名前:デフォルトの名無しさん mailto:sage [03/06/13 21:49] 751は妄想が過ぎるんだよ
755 名前:751 [03/06/13 23:04] >>753 宇宙のステルヴィアで使われているプログラミング言語です 多分 言語なのか怪しいけど
756 名前:デフォルトの名無しさん mailto:sage [03/06/13 23:23] >>755 ??????????????????????????????????????????????
757 名前:751 mailto:sage [03/06/13 23:33] >>756 ごめんなさい、くだらないことなんで気にしないでください
758 名前:名無し@沢村 [03/06/16 20:46] おまいらよ、脳内開発は終わったか?
759 名前:デフォルトの名無しさん mailto:sage [03/06/17 09:28] >>751 ありゃ言語というより環境だろ。 >>752 笑えないから。
760 名前:デフォルトの名無しさん [03/07/10 19:28] lex/yaccの宿題なのですが、ここで質問してもよいでしょうか?
761 名前:デフォルトの名無しさん [03/07/10 22:38] >>760 丸投げはイヤンよ。
762 名前:デフォルトの名無しさん mailto:sage [03/07/10 22:46] 自作ファイラやエディタに言語を組み込みたいんだけど どこかいい説明サイトないですか?
763 名前:デフォルトの名無しさん mailto:sage [03/07/11 00:47] emacsのソース嫁
764 名前:デフォルトの名無しさん mailto:sage [03/07/11 01:05] うーん、ここマジレスしていいとこなのか? >>763 emacsは、特定のアプリケーションにLispが組み込んであるというより、 全体がLispシステムという構成でユーザにLisp環境を与えてるんだから >>762 向きじゃないだろう。 Tclを勉強するのがいいと思う。そもそも汎用の組み込み言語を目指して 発生したものだから。ラッキーなら>>762 はTclをそのまま活用できるかも。
765 名前:764 mailto:sage [03/07/11 01:09] >>764 組み込み用言語 ↓ 言いたかったのは、券売機とか洗濯機とかNC機に組み込むソフトじゃなくて、 アプリケーションに組み込むソフトってことね。後者は何て言えばいいんだっけ?
766 名前:デフォルトの名無しさん mailto:sage [03/07/11 01:20] アプリ組み込み用言語処理系 ・・・ダサ
767 名前:760 mailto:sage [03/07/11 02:16] それではお願いします 次の条件を満たすスタックマシンのオブジェクトコードを出力するコンパイラをlex/yaccを作成せよ。 ・代入文のサポート ・if,if-else,whileのサポート ・入出力文のサポート ・ブロック構造体のサポート ・条件式のサポート ・固定変数のサポート ・int abc,xy[50];のような変数と配列の混在した宣言文が、何行でもファイルの先頭に書ける ・配列への代入、配列からの参照には、添字として数式が使える という問題なのですが、下から2つの機能を除いたものは作ることができたのですが、 下の2つを追加するのにどこをいじればいいか全くわかりません。どなたかアドバイスお願いします。
768 名前:760 mailto:sage [03/07/11 02:17] 以下プログラムです lex %% "+" return(ADDOP); "-" return(SUBOP); "*" return(MULOP); "/" return(DVIOP); "(" return(LPAR); ")" return(RPAR); "=" return(ASSIGN); ";" return(SEMI); "{" return(LLPAR); "}" return(RRPAR); "<" return(LLLPAR); ">" return(RRRPAR); "<=" return(REB); ">=" return(LEB); "==" return(EQ); "!=" return(NEQ); "if" return(IF); "put" return(PUT); "get" return(GET); "else" return(ELSE); "while" return(WHILE); "'" return(AP); "," return(CM); [0-9]+ {sscanf(yytext,"%d",&yylval);return(NUMBER);} [a-z] {yylval=yytext[0]-97;return(ALPHABET);} [ \t\n]+ ; . {yylval=yytext[0];return(CHARACTER);} %%
769 名前:760 mailto:sage [03/07/11 02:24] yacc-1 program :var_lists{kansu("INT",0,0);} lists {table[0].q=hyo[number-1].add+hyo[number-1].size; kansu("HL",0,0);for(i=0;i<codenum;i++){printf("%s %d%d\n",table[i].op,table[i].p,table[i].q);}} ; var_lists :INT arrays SEMI |var_lists KONMA INT arrays SEMI ; arrays :var_decl{A=touroku(string);} |arrays KONMA var_decl{A=touroku(string);} ; var_decl:VARIABLE|VARIABLE KAKKO5 NUMBER KAKKO6; var1 :/*empty*/{hyo[A].size=1;} |KAKKO5 NUMBER KAKKO6{hyo[A].size=$2;} ; lists :lists list |list ; list :VARIABLE{kansu("LA",0,sansyo(string));} var2 ASSIGN expression SEMI{kansu("ST",0,0);} |KAKKO3 lists KAKKO4 |if_prefix list{table[$1].q=codenum;} |if_prefix list ELSE{$$=codenum;kansu("J",0,0); table[$1].q=codenum;} list{table[$4].q=codenum;} |WHILE{$$=codenum;} KAKKO1 condition KAKKO2{$$=codenum;kansu("FJ",0,0);} list{kansu("J",0,$2); table[$6].q=codenum;}
770 名前:760 mailto:sage [03/07/11 02:25] yacc-2 |GET KAKKO1 VARIABLE{kansu("LA",0,sansyo(string));} var2{kansu("RI",0,0);} KAKKO2 SEMI |SEMI ; if_prefix:IF KAKKO1 condition KAKKO2{$$=codenum;kansu("FJ",0,0);} condition:expression YORIDAI expression{kansu("GI",0,0);} |expression IJO expression{kansu("GE",0,0);} |expression MIMAN expression{kansu("LT",0,0);} |expression IKA expression{kansu("LE",0,0);} |expression ONAJI expression{kansu("EQ",0,0);} |expression TIGAU expression{kansu("NE",0,0);} ; put_list:put_list KONMA put_parm |put_parm ; put_parm:expression {kansu("WRI",0,0);kansu("WLN",0,0);} |CHARACTER{kansu("LC",0,$1);kansu("WRC",0,0);kansu("WLN",0,0);} ; expression:expression WA expression{kansu("AD",0,0);} |expression SA expression{kansu("SB",0,0);} |expression SEKI expression{kansu("ML",0,0);} |expression SYO expression{kansu("DV",0,0);} |SA expression %prec UMINUS{kansu("NEG",0,0);} |KAKKO1 expression KAKKO2{$$=$2;} |NUMBER{kansu("LC",0,$1);} |VARIABLE{kansu("LA",0,sansyo(string));} |VARIABLE{kansu("LA",0,sansyo(string));} KAKKO5 expression KAKKO6{kansu("LI",0,0);} ;
771 名前:760 mailto:sage [03/07/11 02:28] yacc-3 %% #include "lex.yy.c" struct{int address;char op[5];int p;int q;}table[100]; struct{char name[127];int soeji;int add;int size;}hyo[128]; int codenum=0; int A,i,j; void kansu(char x[], int y, int z){ strcpy(table[codenum].op,x); table[codenum].p=y; table[codenum].q=z; codenum++;} int number =0; touroku(char a[]){ int b; /*int c; int start_add=0;*/ for(b=0;b<number;b++){ if(strcmp(hyo[b].name,a)==0){ printf("error\n"); return(NULL);}} strcpy(hyo[number].name,a); hyo[number].soeji=number; hyo[number].add=hyo[number-1].add+hyo[number-1].size; return(number++);} sansyo(char d[]){ int e; for(e=0;e<number;e++){ if(strcmp(hyo[e].name,d)==0){ return(hyo[e].add);}} printf("no name\n"); return(NULL);}
772 名前:名無し mailto:sage [03/07/12 17:58] www.experimentalstuff.com/Technologies/JavaCC/index.html ここからJavaCCをDLしようとしても The page you are looking for, /data/javacc-3.0.zip isn't here. Sorry. ってでてDLできないんですが
773 名前:デフォルトの名無しさん mailto:sage [03/07/12 22:25] >>772 zipも、tar.gzも両方落とせるけど?
774 名前:名無し mailto:sage [03/07/13 00:23] >>773 クッキーONにしたらDLできました
775 名前:デフォルトの名無しさん [03/07/13 05:23] 自己記述可能なオブジェクト指向の言語処理系で予約語や特殊記号の数が最小のものってどっかに転がってませんかね
776 名前:_ mailto:sage [03/07/13 05:25] homepage.mac.com/hiroyuki44/
777 名前:デフォルトの名無しさん mailto:sage [03/07/13 12:51] >>775 scheme
778 名前:通りすがり mailto:sage [03/07/14 07:23] 因みに何で760はスルーなんですか?
779 名前:通りすがりっていうか mailto:sage [03/07/14 07:24] 多分760をここに誘導した奴なんだけどね。
780 名前:デフォルトの名無しさん mailto:sage [03/07/14 11:45] >>778 まずインデントをどうにかしてくれんと読む気にならん。 ぱっと見、文法をどうにかしろよって感じだが。
781 名前:山崎 渉 mailto:(^^) [03/07/15 09:51] __∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄
782 名前:デフォルトの名無しさん mailto:sage [03/07/17 13:25] >>767 アクションは後回しにして、まず文法だけ集中して考えてみたら。 ふつうはまず文法だけで書いて動かしてみて、正しくreductionが行なわれるかを確認 しますよね。 var_lists :INT arrays SEMI |var_lists KONMA INT arrays SEMI ; これだと int v, int x; なんていうのが通ってしまうけど… かなり混乱してます。もうちょっと整理しよう。
783 名前:760 mailto:sage [03/07/19 11:17] >>782 レスありがとうございます なんとか自分で解決できました
784 名前:デフォルトの名無しさん [03/07/19 11:51] 600番台は危険な香りがしたのであげ
785 名前:デフォルトの名無しさん [03/07/23 19:12] 初歩的な質問なんですけど字句解析の段階で 「どちらとも言えない」トークンが出てきた場合はどうすればいいのでしょうか? 例えば C の * は 1 * 2 のような乗算演算子なのか *ptr -= 4 のようなデリファレンス演算子なのか 単純に字句解析だけしていくとわからないのです。 いくつか考えたのですが。 1.構文解析や意味解析から字句解析を呼び出すようにして、それらの処理内容を字句解析に使用する 2.TOKEN_ASTERISK のように中途半端な状態にして構文解析の段階で適切な物にする 3.とりあえず OP_MULTIPLY みたいにどっちかにしておいて、後で不適切だった場合に OP_DEREFERENCE など適切な物に置き換える もしくは上記以外のもっと賢い方法があるのでしょうか? よろしくお願いします。
786 名前:デフォルトの名無しさん mailto:sage [03/07/23 20:24] >>785 1*2 の形の奴が単項演算子であるわけが無い。 *ptr の形の奴が2項演算子であるわけが無い。 よってどちらともいえないトークンではない
787 名前:デフォルトの名無しさん mailto:sage [03/07/23 20:39] >>786 例が良くないだけで、問題は依然として解決していないと思うが? MyClass::Member * a; C++のこれは宣言?それとも乗算? >>785 どれでもOK。標準はない。 俺だったら2を選ぶけど、それも参考程度にね。
788 名前:785 mailto:sage [03/07/23 22:40] >>786 & >>787 レスありがとうございます。 もしかして私の「字句解析」っていう言葉への認識って間違ってるのかなと思っちゃったのですが、 字句解析って「字面からわかる範囲で」文字列をトークンに切り出していく作業だと思っていたのですが 前後のトークンの状態などまで見るべきものなのでしょうか? つまり単項か2項かというのは前後のトークンがわからなければ決定できないと思うのですが そういう所まで見るのが普通なのでしょうか? (前のトークンはともかく、後のトークンまで判別に使うとするとかなり難しい事になりますよね) 一般論という感じでいいのですが、ご教授ください。 よろしくお願いします。
789 名前:デフォルトの名無しさん mailto:sage [03/07/23 22:55] >>788 > 字句解析って「字面からわかる範囲で」文字列をトークンに切り出していく作業だと思っていたのですが それであってる。 > 前後のトークンの状態などまで見るべきものなのでしょうか? そうする処理系もある。 ただそれは、純粋に字句解析だけでなく、一部構文解析も含んだ処理ということになる。 > つまり単項か2項かというのは前後のトークンがわからなければ決定できないと思うのですが > そういう所まで見るのが普通なのでしょうか? これも処理系によりけりで、>>785 のどれになるかはいろいろ。 字句解析と構文解析の境界は、厳密に分かれているとは限らない。 今みたいに曖昧な場合や、いっそ「字句+構文解析」をしてしまうこともある。 逆に、あらかじめ曖昧さが生じないように言語を設計する場合もある。 ・・・あんまり役に立ってないな、俺。 まぁ、生きた例を知りたいなら、解析器や言語処理系のソースを読むのが一番。
790 名前:785 mailto:sage [03/07/23 23:43] >>789 レスありがとうございます。 なるほど、厳密にパートを仕切る必要はないんですね。 >・・・あんまり役に立ってないな、俺。 そんな事ないです。日曜プログラムなので、周りに聞く人もいなくて 参考書籍とか雑誌とかもいくつか引っ張り出してきたりしてみたんですが、 疑問が出てきちゃったら正解かどうか確認する手段がないので、 こういう風に「それで間違いない」とか「それはこういう意味だよ」って答えてくれるだけで とても助かります。ありがとうございました。
791 名前:ろうひ男爵 mailto:sage [03/07/24 07:53] >>785 ラベルが AAA: の場合にも、字句解析で1文字先読みして":"まで確認するものが多いですしね。 じぶんも、2)の中途半端な物にしておきます。
792 名前:デフォルトの名無しさん mailto:sage [03/07/24 08:02] C++パーサーとかjavaパーサー用の .l .yファイルってどこかで公開されてませんか?
793 名前:デフォルトの名無しさん [03/07/24 15:44] >>785 C言語のパーサーの話なら、おたずねの * に関して字句解析が気にかける必要 はありません。それらの区別は構文解析の責任です。字句解析では'*' という トークンを返せばそれで良いのです。 では字句解析はつねに文脈を気にしないで良いのかというとそうでもありません。 たとえばC のtypedef名は TYPEDEF_NAME というトークンを返さないと正しく 構文解析ができませんので、字句解析はidentifierを見たときに記号表を見て、 それがtypedef名として登録されているかどうかを調べなくてはいけません。 typedef名であれば TYPEDEF_NAME を、そうでなければ IDENTIFIER を返す のです。 # 実はCの構文解析ではこの後さらに、TYPEDEF_NAMEを通常のidentifierとし # て解釈するという処理もしなければならないのですが、初心者が混乱すると # いけないのでこのへんでやめときます。
794 名前:デフォルトの名無しさん mailto:sage [03/07/25 02:53] なぜおまえらLISPを使わんのだ
795 名前:デフォルトの名無しさん mailto:sage [03/07/25 03:04] Lispを使うスレでないから
796 名前:デフォルトの名無しさん mailto:sage [03/07/25 06:35] Lispはクソだから
797 名前:デフォルトの名無しさん mailto:sage [03/07/25 13:57] 括弧悪いから。
798 名前:デフォルトの名無しさん mailto:sage [03/07/25 19:32] 括弧(・∀・)イイ!
799 名前:ろうひ男爵 mailto:sage [03/07/25 21:14] >>797 ワタラ。
800 名前:デフォルトの名無しさん mailto:sage [03/07/26 02:50] >>799 激しく同意
801 名前:デフォルトの名無しさん mailto:sage [03/07/26 18:27] おまえらLISPは柔軟だからコンパイラやアセンブラとかを LISP自身で書けるんだぞ。そもそも記号処理は得意分野だからな。 CやJavaで組むより簡単だろう。 実装側の言語に頼る量も最小で済むんだぞ。 なぜ使わんのだ。
802 名前:デフォルトの名無しさん mailto:sage [03/07/26 18:28] >>797 括弧悪い?アホか。 括弧の量なんて些細な事でしかない。
803 名前:デフォルトの名無しさん mailto:sage [03/07/27 08:34] >>802 通じて無いよこの人
804 名前:デフォルトの名無しさん mailto:sage [03/07/27 14:24] Lisp厨うぜぇ。 括弧読みにくいんだよ。 いつまでもマイナー言語でオナニーしてろよ、ボケ!
805 名前:デフォルトの名無しさん mailto:sage [03/07/27 15:47] Lisp厨以上に厨さを醸し出す>804 コイツ、ウザッ
806 名前:デフォルトの名無しさん mailto:sage [03/07/28 07:32] >>801 Lispじゃなくても、コンパイラやアセンブラはその言語自身でかけるが・・・
807 名前:デフォルトの名無しさん mailto:sage [03/07/28 07:32] ああ、すまん。より簡単だといいたいわけね。 本当にそうなの?
808 名前:デフォルトの名無しさん [03/07/28 09:27] 字句解析についての質問なんですが、 自前でトークンを切り出すコード (もし先頭がアルファベットならwhileで延々読み込みみたいな)の実行速度と lexで吐き出すコードの実行速度ではどちらが早いんでしょうか?
809 名前:デフォルトの名無しさん mailto:sage [03/07/28 13:51] 実装次第
810 名前:棄教者 ◆egKIKYO7cg mailto:sage [03/07/28 14:50] >>808 オートマ車とマニュアル車とどっちが燃費いいかという命題に似ている。
811 名前:デフォルトの名無しさん mailto:sage [03/07/28 18:24] >>808 のような質問をする人間にはマトモな実装が出来るわけが無い、と仮定すると lex の吐き出すコードのがマシと思われ。
812 名前:デフォルトの名無しさん mailto:sage [03/07/28 18:51] >>811 の誤りは、自明なことをあらためて仮定したこと。
813 名前:名無し@沢村 [03/07/28 20:47] おまいらよ、コンパイラやスクリプトエンジンよりも、TVウェアをつくってみないか? pc2.2ch.net/test/read.cgi/tech/1059262203/l50
814 名前:808 [03/07/28 21:53] 実装次第ですが・・・ありがとうございました。 初めてlexのコード見たんですが 移植する時間も自信も・・・なので諦めました・・・ メモリも全然使えない環境ですし・・・
815 名前:デフォルトの名無しさん [03/07/29 19:20] >>814 綴りの認識程度ならlex(というかDFA)は大袈裟な気がする。 僕だったら、連続するアルファベットと数字を連結して単語にし、事前に作っ ておいたハッシュ表を索いておしまいにします。 ハッシュ表は、完全ハッシュ関数を作成するツール(GNU gperf)を使えば、 かなり小さくできるし。
816 名前:デフォルトの名無しさん mailto:sage [03/07/29 23:49] >>808 最初で、しかも簡単な物でしたら、手で作ってみるのもいいのではないでしょうか。 それからlexを覚えた方が理解が深まりますし。
817 名前:デフォルトの名無しさん mailto:sage [03/07/30 00:31] 手作りするより、早めにlexの使い方を覚えた方が 後々楽な気がするけど。 まあ、時間に余裕があるなら。
818 名前:デフォルトの名無しさん mailto:sage [03/07/30 12:19] 801 ではないが,Lisp の場合 字句解析 -> 不要 構文解析 -> すでに終わってる なので激しく楽なのは間違いない.本の章一つで Lisp のサブセットやそのコンパイラの作成法が載るくらい.
819 名前:デフォルトの名無しさん mailto:sage [03/07/30 23:08] LISP Scheme Pert8テンプレより Lisp 言語処理系: CAMPUS LIsP, Lemon version ttp://aten.aial.hiroshima-u.ac.jp/~kakugawa/clisp/index-ja.shtml Cコードによるわずか1000行の実装 ちなみにLispのマクロは字句解析と構文解析の間に作用するので、 別の言語のインタプリタをLisp上に作ることができる。 Paul GrahamのOn Lispという本(Web公開中)ではCommon Lisp上の Prologインタプリタが解説されているし、 Richard Fateman教授のサイトには(おおっぴらには載せてないが) Common Lisp上のMathematicaサブセットのインタプリタのソースが置いてある。 いずれもマクロを活用している。 おまけ bison, flexマニュアル和訳 ftp://ftp.ascii.co.jp/pub/GNU/
820 名前:デフォルトの名無しさん mailto:sage [03/07/31 12:43] lisp厨は逝けよ。 lispのマクロで満足できるならこのスレには来るわけないんだからさ。
821 名前:デフォルトの名無しさん mailto:sage [03/07/31 18:04] >>820 このスレで無駄に時間浪費した挙句、互換性のクソもない コンパイラ・インタプリタなんぞ作って、いったい誰が使うのかな。
822 名前:デフォルトの名無しさん mailto:sage [03/07/31 19:01] >>821 スレの存在そのものに疑義があるんなら立ち入ってくるなっつの。
823 名前:デフォルトの名無しさん mailto:sage [03/08/01 02:36] >lispのマクロで満足できるならこのスレには来るわけないんだからさ。 lispのマクロを極めた人しかこんなことは言えないと思うのですが。
824 名前:デフォルトの名無しさん mailto:sage [03/08/01 03:05] >>823 馬鹿だろ? lispでマクロを極めようがどうしようが、んなことはフルスクラッチで スクリプトエンジンを組みたい奴の欲求には答えられないっていってるの。 プロトタイプだけ作って満足するならともかく。 こういう場を読めないLispスノッブが大杉。
825 名前:デフォルトの名無しさん mailto:sage [03/08/01 03:46] >>824 お前こそ馬鹿だろ? lispのマクロがプロトタイプだけしか作れなくて フルスクラッチの方がえらいみたいに考えてるところが。
826 名前:デフォルトの名無しさん mailto:sage [03/08/01 05:23] 824じゃないが >> フルスクラッチの方がえらいみたいに考えてるところが。 > スクリプトエンジンを組みたい奴の欲求には答えられないっていってるの。 Lispでどんあ言語でも作ることができる何て言ってるヤシは、 Lispしかやったこと無いヤシ。
827 名前:デフォルトの名無しさん mailto:sage [03/08/01 05:46] どんな言語でも大抵の言語は作れるよ
828 名前: mailto:sage [03/08/01 07:34] flexで最後にマッチした文字列が入るyytextには'\0'は付加されるの? guppy.eng.kagawa-u.ac.jp/~kagawa/1999/SysProg/both.html では付加されないから注意が必要と書いてるけど www.geocities.co.jp/SiliconValley-Oakland/3432/man/flex/flex-ja_4.html#SEC35 とかのサンプルみてるといきなりstrcpy(yylval.name,yytext)見たいな感じのコードがあるんだけど。 strcpyはソース側がNULL文字終端じゃないといけないよね。 それとも自分が何か勘違いしてるのかな?教えてください。
829 名前:デフォルトの名無しさん mailto:sage [03/08/01 11:39] >>827 そりゃアセンブラでも作ることはできるだろう。 ようはどれだけ簡単に作ることができるかだ
830 名前:デフォルトの名無しさん mailto:sage [03/08/01 12:21] >>828 というかこれにぶっ飛んだよ。 %union{ char name[128]; }
831 名前:デフォルトの名無しさん mailto:sage [03/08/01 13:29] >>826 Lispスノッブ大杉って,漏れには数人しか見えないが…. コンパイラやスクリプトエンジン書くのに言語やツールなんか関係ねーだろう. フルスクラッチがいいなら Lex も Yacc も使わずに全部手でかけばいいじゃん.
832 名前:デフォルトの名無しさん mailto:sage [03/08/01 14:00] 最近Schemeを勉強し始めたんだが、現時点での感想。 利点 - GCがあるので、メモリ管理が楽 - リストや木などを処理し易い - S式を入出力する手続きが用意されている 途中結果の出力や、個々の手続きの動作検証がし易い - シンボル シンボルを使うとシンボルテーブルを新たに作らなくてもよいかもしれない。 欠点 - lexやyaccのようなデファクトスタンダードなツールがない guile絡みでLanguage Implementation Toolなるものがあるらしいが、 どういう位置づけのものなのかは知らない。 - 動作が遅い ネイティブコードを吐くコンパイラもあり、速いらしい。 それでも、チューニングをし出すとCとかで組んだ方が速くなると思う。 - マクロ Schemeは処理系によってマクロの書き方が違う。 - 資料が少ない 検索しても見つかるのは、Schemeの処理系を作る話ばかり。 On Lispに載っていたPrologインタプリタは、Prologの機能を マクロとかを使って実現するという話ぽかった。 もしかしたら前の方の章にProlog→S式変換の話があったりするとか?
833 名前:832 mailto:sage [03/08/01 14:07] まだ、Schemeではプログラムをあまり書いていないので、 先入観も含んじゃっています。
834 名前:828 mailto:sage [03/08/01 14:14] >>830 すいません、まだ勉強始めたばっかりでなんでぶっ飛んだのかわかりません。 あとflexは自動的にヌル終端文字列にしてくれるんですか?
835 名前:デフォルトの名無しさん mailto:sage [03/08/01 14:21] >>821 > 互換性のクソもないコンパイラ・インタプリタなんぞ作って、いったい誰が使うのかな。 このスレで書いてはならない事を書いたね。
836 名前:デフォルトの名無しさん mailto:sage [03/08/01 18:47] ごめん
837 名前:デフォルトの名無しさん mailto:sage [03/08/01 18:55] >>836 素直だ。
838 名前:デフォルトの名無しさん mailto:sage [03/08/01 19:00] >>834 %unionってスタックの要素になるんだが、それを128byteとる豪儀(藁)さに。 終端はしないはず。
839 名前: mailto:sage [03/08/01 21:03] >>838 おお、どうもありがとう。
840 名前:デフォルトの名無しさん mailto:sage [03/08/01 21:31] すまん、されてるっぽいよ。
841 名前:デフォルトの名無しさん mailto:sage [03/08/01 23:52] >>832 なんで Lisp 厨を刺激しそうなことを書くかね・・・。 とりあえず、フォローしておこう。ちょっと検索したけど Scheme 用の LALR パーサジェネレータとかある。資料も英語なら本が何冊もオンライン で読めるみたいだし。
842 名前:デフォルトの名無しさん mailto:sage [03/08/01 23:52] >>832 なんで Lisp 厨を刺激しそうなことを書くかね・・・。 とりあえず、フォローしておこう。ちょっと検索したけど Scheme 用の LALR パーサジェネレータとかある。資料も英語なら本が何冊もオンライン で読めるみたいだし。
843 名前:841 mailto:sage [03/08/01 23:54] うげ、なぜか二重カキコに。吊ってきます。
844 名前:山崎 渉 mailto:(^^)sage [03/08/02 02:12] (^^)
845 名前:デフォルトの名無しさん [03/08/02 04:03] 逆アセンブラはスレ違いですか?
846 名前:デフォルトの名無しさん mailto:sage [03/08/07 22:30] 何でもいいからネタキボンヌ
847 名前:デフォルトの名無しさん mailto:sage [03/08/11 19:10] 七度文庫
848 名前:デフォルトの名無しさん [03/08/12 13:41] ゲームキャラのAIをスクリプトで書けるようにしようと思っています。 JavaScriptを使おうとおもうのですが、組み込んで使えるものなのでしょうか? VC6使っています。
849 名前:デフォルトの名無しさん mailto:sage [03/08/12 14:18] >>848 ちょっと探したら、こんなのみつけたけど。 MozillaのJavaScriptのページ jt.mozilla.gr.jp/js/
850 名前:デフォルトの名無しさん [03/08/12 17:20] 組み込み用途なら、JavaScriptとPerl、どっちがいいですか?
851 名前:デフォルトの名無しさん mailto:sage [03/08/12 20:28] どっちもデカ過ぎるような…。コンパクトな自作言語のがよくないか? まぁ、Python なんかは組み込まれてるの見かけるから漏れの感覚が古い のやもしれず。
852 名前:850 [03/08/12 20:42] Luaが小さくてよさげなのですが、明らかにJavaScriptやPerlと劣っている点はありますか? 小さいことは気にしないのですが、いざ使ってて大きな落とし穴に落ちたら人生いやけがさして多分漏れ自殺します。
853 名前:デフォルトの名無しさん mailto:sage [03/08/12 21:05] が ・ ん ・ ば
854 名前:デフォルトの名無しさん mailto:sage [03/08/12 21:53] LISPがいい
855 名前:デフォルトの名無しさん mailto:sage [03/08/13 04:00] >>852 Luaは最初から組み込むことを前提に考えて作ったっぽいからいいかも。 ただ小さい代わりに言語仕様もライブラリも他と比べて貧弱なので。
856 名前:850 [03/08/13 11:23] たしかに用意されているライブラリは少ない感じがします。 ただ、組み込み用途で使うのであれば、幾つかの型が扱えて ifやwhileなどの制御構文が使えればOKかなぁ。。。 スクリプト側ではフロー制御みたいなことしかやらず、どうせ アプリ側のAPI呼び出しに徹する形になるだろうから。
857 名前:デフォルトの名無しさん mailto:age [03/08/14 17:20] JavaCC使っている人いる? 久しぶりにJavaCCを使おうと思ったら、antからビルド出来なくなっていた。 もちろん、コマンドラインからはjavaccもjjtreeも普通に使えている。 COM.sun.labs.javacc.Mainという存在しないクラスを探すのが原因らしく、 そこを"org.javacc.parser.Mainに書き換えただけで動いた。 sfに移動してから結構経っているのに、誰も気付かなかったのかな。
858 名前:山崎 渉 mailto:(^^) [03/08/15 15:24] (⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン
859 名前:デフォルトの名無しさん [03/08/16 18:29] ほしゅっ
860 名前:デフォルトの名無しさん [03/08/19 21:52] >>764 最近アルバイト先で使ったLSI設計ツール、Tclが組み込まれていた。 もちろん商用アプリなんだけど、Tclって商用利用に使ってもいいんですね。 いや、単に不勉強で、ちまたのスクリプトの何が商用利用(商品に組み込んだ うえで販売)でき、何はだめなのか、よく知らなかったので、たまたまTclを 見つけて「へぇ、こういうふうに商品にもつかっているんだ」と、感心したという だけの話なんですが。
861 名前:デフォルトの名無しさん mailto:ege [03/08/19 23:46] おまえらの中で、boost::spiritを使ってる人いませんか? どんな感じのものなのですか?
862 名前:デフォルトの名無しさん mailto:sage [03/08/20 05:43] ガーベッジコレクションの話題はこのスレでいいのかな?
863 名前:デフォルトの名無しさん mailto:sage [03/08/20 06:19] ↑無関係ではないが、うーん、ちと違う気がするな。
864 名前:デフォルトの名無しさん mailto:sage [03/08/20 06:58] >>862 LISP Schemeスレなら受け入れてくれると思うよ。 自作派が多いから。
865 名前:デフォルトの名無しさん mailto:sage [03/08/21 13:44] >>861 下のサイト見るか、boost スレ行って訊けば? ttp://www.fides.dti.ne.jp/~oka-t/cpplab-boost-spirit.html