- 1 名前:デフォルトの名無しさん [03/11/29 15:59]
- yaccやlexの使い方やら言語仕様やらの話題。
前スレ 1 pc.2ch.net/tech/kako/981/981672957.html 2 pc2.2ch.net/test/read.cgi/tech/1021136715/ (dat落ち) 関連リンクは多分 >>2-8 あたり
- 175 名前:デフォルトの名無しさん mailto:sage [03/12/28 15:10]
- >>140
私はそのまま awk を使ってます. 仕事柄 C/C++ とその他のスクリプト言語の使用比率が 9:1 くらいなので, 他の言語がなかなか覚えられなくて. C に似てて仕様的にも単純なものってことで awk 使ってますが, awk 使うくらいならそのまま C でいいんじゃないかと最近思いました ... 関係ない独り言ですみません.
- 176 名前:デフォルトの名無しさん mailto:sage [03/12/28 18:52]
- >>172
inlining?
- 177 名前:デフォルトの名無しさん mailto:sage [03/12/28 18:54]
- あ
- 178 名前:デフォルトの名無しさん mailto:sage [03/12/28 19:14]
- >>176
いや、静的ではなく動的に。
- 179 名前:デフォルトの名無しさん [03/12/28 19:43]
- >>175
AWKってフィルタ指向が強すぎますよねぇ? それさえなければ、最強なんだけど...
- 180 名前:デフォルトの名無しさん mailto:sage [03/12/29 01:04]
- ゲームで使用するためのスクリプト言語を解説した
洋書を知りませんか? Game Scripting 何とか という名前だったような・・・
- 181 名前:デフォルトの名無しさん mailto:sage [03/12/29 01:34]
- >>180
ttp://www.amazon.com/exec/obidos/ASIN/1931841578/ 漏れも前にちょっと買ってみようかと思った。 amazon.co.jpだと在庫切れ。
- 182 名前:デフォルトの名無しさん mailto:sage [03/12/29 08:32]
- >>181
こんなのあったんだ。 GameProgrammingWith PYTHON, LUA, AND RUBYより、 そっちにスベキダッタ・・・
- 183 名前:デフォルトの名無しさん mailto:sage [03/12/29 08:42]
- ワリイ ゲ製作板と間違えた
- 184 名前:デフォルトの名無しさん [03/12/30 19:39]
- bison は、記述ファイルから、その生成パーサの動作を正しく把握するのがつかれる。
というか、ほとんど無理?
- 185 名前:デフォルトの名無しさん mailto:sage [03/12/30 19:59]
- >>184
把握する必要無いし。
- 186 名前:デフォルトの名無しさん [03/12/31 01:19]
- でも、把握せんと動作がつかめんでしょ?
- 187 名前:デフォルトの名無しさん mailto:sage [03/12/31 01:33]
- >>184
もしかして、シフト/還元のこと?
- 188 名前:デフォルトの名無しさん mailto:sage [03/12/31 02:36]
- >>186
把握しても動作つかめんから心配するな。 再帰上昇型のパーサーは、慣れた人間にとっても予期せぬ動作をすることが ままある。手っ取り早くすませたいなら yacc を使って、そうではなくエラー処理 などキッチリやりたければ、手で再帰下降型のパーサ書いた方が良いよ。
- 189 名前:デフォルトの名無しさん mailto:sage [03/12/31 06:50]
- パーサーのテストどうやるの?
- 190 名前:デフォルトの名無しさん mailto:sage [03/12/31 11:32]
- >>189
パースしてみる
- 191 名前:デフォルトの名無しさん [03/12/31 16:16]
- >>188
(再帰上昇型/再帰下降型って何ですか?) bison は再帰上昇型でいいのですか?
- 192 名前:デフォルトの名無しさん [03/12/31 16:17]
- >>188
(再帰上昇型/再帰下降型って何ですか?) bison は再帰上昇型でいいのですか?
- 193 名前:デフォルトの名無しさん mailto:sage [03/12/31 18:19]
- >>191
ぐぐれ。キーワードはこんな感じで。 構文解析 上昇 下降
- 194 名前:デフォルトの名無しさん [03/12/31 19:45]
- >>193
keywordありがとう!
- 195 名前:デフォルトの名無しさん [03/12/31 22:41]
- >>188
> 再帰上昇型のパーサーは、慣れた人間にとっても予期せぬ動作をすることが > ままある。 これって、本当ですか?
- 196 名前:デフォルトの名無しさん [03/12/31 22:51]
- >>195
実装がへぼいか、定義がへぼいときは、本当です。
- 197 名前:デフォルトの名無しさん mailto:sage [03/12/31 23:15]
- >>195
本当。 正常なトークン列を与えたときの動作は予期どおりになるが、異常なトークン列を 与えたときの振る舞いは直感に反することがままある。頑強なエラー・回復処理を 実装したい場合、たとえば HTML パーサのように、厳密に規格に従ってなくとも受け付けたい エラー時にそれなりに適切なエラーメッセージを出したい なんつーばあいには、再帰上昇型は人間の手に余る。
- 198 名前:デフォルトの名無しさん [04/01/01 01:17]
- >>197
ミジカな例まで出してくれてありがとう! 上昇型は、厳密な言語むきってことですかね? メリットは、記述が少ないことぐらいですか?
- 199 名前:デフォルトの名無しさん mailto:sage [04/01/01 03:34]
- ところで、ふつうのyaccが生成するパーサは再帰上昇型ではないと思うのだが。
(陽にスタックを持ち、表を引いてgotoしまくるだけで、再帰呼びだしはしない) 最近のbisonは再帰上昇型のコードも生成できるの?
- 200 名前:デフォルトの名無しさん mailto:sage [04/01/01 05:02]
- ttp://www.futamura.info.waseda.ac.jp/~futamura/
futamura projection の二村さんのサイト見つけた。
- 201 名前:デフォルトの名無しさん [04/01/01 20:54]
- どうみてもbisonは再帰的だが
- 202 名前:デフォルトの名無しさん mailto:sage [04/01/01 21:43]
- >>199
再帰呼び出しと再帰的文法解析を混同してないか? 再帰するためにスタック用意してるんでは?
- 203 名前:デフォルトの名無しさん mailto:sage [04/01/01 23:39]
- >>202
英語でrecursive descent parserといえば、LL文法に基いて、いくつかの相互 に呼出しあう関数群で記述された構文解析器のことを指す。 これと同様、recursive ascent parserというのは、LR文法に基いて、明示的 な状態スタックを持たず、相互に呼出しあう関数群で構成されている構文解析 器のこと。yaccやbisonが作るパーサーは、明示的なスタックを持つ表駆動オー トマトンなので、recursive ascent parserではない。(両者は言語を認識する 能力は同じだが、細かい記述能力の点で違いがある) recursive ascent parser については僕も勉強中なのであまり突っ込まれると 困るが、comp.compilersの過去ログ↓に良いreferenceがあるのでそちらを参 照してください。 compilers.iecc.com/comparch/article/93-05-016 compilers.iecc.com/comparch/article/93-05-045
- 204 名前:デフォルトの名無しさん mailto:sage [04/01/02 01:19]
- >>203
そう呼ぶ「流儀もある」というだけの話。 コンパイラ理論に限らず、専門用語は人によって解釈に幅があるのが普通だから、 適当に補って読み書きしとくのが吉だ。
- 205 名前:デフォルトの名無しさん mailto:sage [04/01/02 13:02]
- >>203
そういえば思い当たる用語がいくつかある。 素数に1を含めている場合があって、教授の中の人に 「素数の定義のなかに『1以外の』ってあるんですけど」 って聞いたら 「小中高ではそのように教えているようだが学会によって違うし、 必要なら論文の冒頭で定義する。」って言ってた。 それと、以前知り合いに聞いたんだが、 そいつの学科では「逆ポーランド記法」 を「ポーランド記法」って呼んでて、 どうしても明確に区別する必要があるときだけ 前置・後置で分けてるんだそうな。 と、言うわけで構文解析に関する学会もいろいろあるだろうし それぞれで違う定義だったり定義されてなかったりするの かも知れない。
- 206 名前:デフォルトの名無しさん [04/01/02 15:56]
- >>205
それは案外あるね。 ここのコンパイラ&スクリプトだけでなく、全ての千問分野で そういった傾向があるみたい。 なので、書籍とかでは著者がどういう定義でその用語を使っているかを 把握したうえで理解しないと混乱する時がたまにある。
- 207 名前:デフォルトの名無しさん mailto:sage [04/01/02 16:23]
- 言い訳にだまされてるだけ
- 208 名前:デフォルトの名無しさん [04/01/02 16:54]
- アフォか素人
- 209 名前:203 mailto:sage [04/01/02 20:39]
- >>204
yaccの生成するパーサを「再帰上昇型」と呼んでいる教科書や文献があったら 教えて欲しいのだが。 僕は見たことがない。googleで検索しても見つからない。
- 210 名前:デフォルトの名無しさん [04/01/02 20:46]
- しるか!
- 211 名前:デフォルトの名無しさん mailto:sage [04/01/02 21:52]
- 海外掲示板用オフラインリーダーを作るスレ
pc2.2ch.net/test/read.cgi/tech/1072883528/ 海外でよく使われていうる掲示板スクリプト 専用のオフラインリーダー作って下さい。 必要な条件はID、PASSを管理できること、 OpenJaneみたいな三面型の見た目。 簡単にローカライズできるように言語ファイルを採用
- 212 名前:デフォルトの名無しさん [04/01/02 23:55]
- アフォ
- 213 名前:デフォルトの名無しさん [04/01/03 00:16]
- VBSの解析ソースください。
- 214 名前:デフォルトの名無しさん [04/01/03 01:37]
-
すいません、ちょっとお尋ねしたいんですが、 UNIX Programing Environment に出てくる「電卓hoc(最終形態)」が 行っている処理アプローチは、今のスクリプト言語にも十分通用するも のでしょうか? それとも、今となっては時代遅れのものでしょうか? ここにおられる皆さんは、どう感じられますか?
- 215 名前:デフォルトの名無しさん mailto:sage [04/01/03 01:52]
- ttp://www.cs.bell-labs.com/cm/cs/upe/index.html
ここにあるやつ?
- 216 名前:デフォルトの名無しさん mailto:sage [04/01/03 05:15]
- >>214
時代遅れだと考えるくらい知識や経験があるならやらなくていい。 そうじゃなければ、やっても無駄にはならない。
- 217 名前:214 [04/01/03 10:58]
- >>215
そうです。(こんなページも有ったんですね。知りませんでした。)
- 218 名前:デフォルトの名無しさん mailto:sage [04/01/03 23:03]
- ttp://www.okisoft.co.jp/esc/go.html
ttp://www.okisoft.co.jp/esc/go2.html ttp://www.okisoft.co.jp/esc/go3.html ttp://www.okisoft.co.jp/esc/go4.html 『やさしい Lisp の作り方』と『やさしい Java インタプリタ の作り方』見つけた。 Java と C# で実装。
- 219 名前:デフォルトの名無しさん mailto:sage [04/01/04 08:39]
- >>218
GOD
- 220 名前:デフォルトの名無しさん mailto:sage [04/01/04 14:04]
- www.google.co.jp/search?q=タグビット
www.google.co.jp/search?q=タグ付きポインタ www.google.co.jp/search?q=%22tagged+pointer%22
- 221 名前:デフォルトの名無しさん [04/01/04 16:56]
- スクリプト言語を設計・実装する場合の一番の難しさって何でしょうね?
- 222 名前:デフォルトの名無しさん mailto:sage [04/01/04 17:09]
- >>221
妥協すること。 汎用的だが回りくどい書き方と、特定用途専門で簡単な書き方。 実行時の速度効率と、柔軟性。 メモリ使用効率とスピード。 いろいろいろいろ相反する要素が出てくるので、目標を明確にしておかないと あれもこれも盛り込んだ挙句に、中途半端で使いにくいスクリプトになりがち。
- 223 名前:デフォルトの名無しさん mailto:sage [04/01/04 23:29]
- >>222
思いもよらない視点にビクリ! あんた、プロ?
- 224 名前:デフォルトの名無しさん mailto:sage [04/01/06 18:37]
- >218
LISP処理系作るのは簡単だけど、 Schemeの末尾再帰や継続呼び出しを載せようとすると、 とたんに難しくなるよね。 末尾再帰だけならまだ楽か。
- 225 名前:デフォルトの名無しさん mailto:sage [04/01/06 18:52]
- 末尾再起も継続も簡単
大変なのはクロージャや継続の実装に必要な 環境の複製の効率化。
- 226 名前:デフォルトの名無しさん [04/01/06 19:01]
- まぁ、LISPと言ってる時点で(ry
- 227 名前:デフォルトの名無しさん mailto:sage [04/01/06 21:27]
- >大変なのはクロージャや継続の実装に必要な
>環境の複製の効率化。 これって Scheme に限らない問題だと思うんだけど(lexical closure を持っている 言語は沢山あるよね)、これに関して日本語のまとまったドキュメントってあまり 無いね(知らないだけ?)。 知ってるのはこことか。 ttp://www.shiro.dreamhost.com/scheme/gauche/memo-stack-j.html
- 228 名前:デフォルトの名無しさん [04/01/06 22:09]
- LISPで有効に実用化されているプロジェクトってあるのw
- 229 名前:デフォルトの名無しさん mailto:sage [04/01/06 22:12]
- アーロン
- 230 名前:デフォルトの名無しさん mailto:sage [04/01/06 22:21]
- >>228
Lisp そのものじゃないが、Lisp に極めて近い文法のファイルでデータを保存する CAD ソフトは見た事あるな。確かに、書くの楽そうだ。
- 231 名前:デフォルトの名無しさん mailto:sage [04/01/06 22:27]
- 何かちょっと調べてみると、Pure な OO って意味があるのか疑問に感じてきた。
Java みたいにプリミティブを用意した方が効率良さそう。Hybrid 言語マンセー!
- 232 名前:デフォルトの名無しさん [04/01/07 20:27]
- アホーン
- 233 名前:デフォルトの名無しさん mailto:sage [04/01/08 09:13]
- なるほど、これが冬か。
- 234 名前:デフォルトの名無しさん mailto:sage [04/01/11 15:46]
- merd.net/pixel/language-study/syntax-across-languages/
rwiki.jin.gr.jp/cgi-bin/rw-cgi.rb?cmd=view;name=%a5%b9%a5%af%a5%ea%a5%d7 %a5%c8%b8%c0%b8%ec%a4%ce%c8%e6%b3%d3 色んな言語の構文の比較。 考えやすく、書きやすく、なおかつ読みやすいシンタックスって何だろう。 Haskell はちょっと良い感じ。
- 235 名前:デフォルトの名無しさん [04/01/11 18:36]
- Windows上で使えるlexを教えてください。
よろしく
- 236 名前:デフォルトの名無しさん mailto:sage [04/01/11 18:39]
- 少しは調べる努力をしろ。
以上
- 237 名前:235 [04/01/11 18:42]
- >>236
調べたけど見つからなかった。 よろしく、
- 238 名前:デフォルトの名無しさん mailto:sage [04/01/11 18:44]
- flex.
- 239 名前:235 [04/01/11 18:46]
- >>238
ありがとう お礼にパトレイバーのプロトタイプをのせとく www.enryu.jp/
- 240 名前:デフォルトの名無しさん mailto:sage [04/01/11 21:43]
- 夢のプログラミング言語@いちごびびえす
www.ichigobbs.net/cgi/readres.cgi?bo=proglam&vi=0071&rm=50
- 241 名前:デフォルトの名無しさん mailto:sage [04/01/11 22:53]
- >>240
プログラミング言語は満載した機能を特色の第一とするものではない。 あとになって機能の追加が必要と判明するような弱点と制限を取り除いて設計すべきである。
- 242 名前:デフォルトの名無しさん mailto:sage [04/01/12 00:19]
- >proglam
頭の程度が知れたな
- 243 名前:デフォルトの名無しさん [04/01/12 02:01]
- 上の方にあった(↑)「UNIXプログラミング環境」に掲載されていた関数
電卓hocですが。 ちょっとしたフロー制御や、ユーザー関数定義等ができることを考えると、 ほぼ、スクリプト言語のコアが出来上がっているとも考えられますが、い かがでしょうか?
- 244 名前:デフォルトの名無しさん mailto:sage [04/01/12 02:28]
- >>241
激しく同意。どうもC++系に知識が偏ってるぞ>>240のリンク先の>>1は。 とりあえず本当にSchemeぐらい齧って欲しいな。
- 245 名前:デフォルトの名無しさん mailto:sage [04/01/12 03:10]
- >>244
lisp知りたてのおばかさんですか? 継続とかコードとデータの同一視とか、その辺の動的な事情が適合しない分野もあるだろうに。 lisp的な考え方は切り捨てるべきときがあることも勉強しときなさいな。
- 246 名前:デフォルトの名無しさん mailto:sage [04/01/12 03:20]
- >>245 は Lisp を叩くと偉いとでも思っているのかな?
それとも継続って言ってみたかっただけか? 気持ちは分かるけど、スレの流れからしてそのレスは不自然。
- 247 名前:デフォルトの名無しさん mailto:sage [04/01/12 03:24]
- 元が夢・独り言板なんだから、
そこの>>1にとっての「夢のプログラミング言語」でしょ、ほっといてやれ。 まあ、C#++くらいの雰囲気になっているのは確かだけど。
- 248 名前:デフォルトの名無しさん mailto:sage [04/01/12 03:25]
- 継続って言ってみたかったってのはあるかもな。
ただlispといわずにあえてschemeというからには、継続しか要因がないだろうからな。 まあ、実るとは思ってないけど何かやろうとしている人を 頭ごなしに否定するレスってのはどうよって思うわけだ
- 249 名前:!244 mailto:sage [04/01/12 03:32]
- >>248
出典出さなくて申し訳ない。まずは下の「はじめに」を読んで欲しい。 そしたら何で >>244 が Scheme って書いたのかが分かると思う。 ttp://www.sci.toyama-u.ac.jp/~iwao/Scheme/r5rsj/html/r5rsj.html あと、何にせよコンパイラ作るのに Lisp は知っていた方が良いでしょ。
- 250 名前:デフォルトの名無しさん mailto:sage [04/01/12 03:37]
- 継続しか、ってことはないだろうに
- 251 名前:デフォルトの名無しさん mailto:sage [04/01/12 03:41]
- schemeにはあってcommon lispには無いものって細かいことを除けば
継続と末尾再起の展開の規定くらいなものだろ
- 252 名前:デフォルトの名無しさん mailto:sage [04/01/12 03:48]
- なんか増えてるな
調べるともっと増えるんだろうな
- 253 名前:デフォルトの名無しさん mailto:sage [04/01/12 04:00]
- 増えてるって末尾再起の展開か?
こんなもん実装詳細に分類されるものであって、 言語仕様の議論でいちいち取り上げるほどのものでもないだろ。 gccですら実現できてることだしな。
- 254 名前:デフォルトの名無しさん mailto:sage [04/01/12 04:02]
- lispとschemeのコード読んで違いを認識してから出直して来い
- 255 名前:デフォルトの名無しさん mailto:sage [04/01/12 04:12]
- >>251
> schemeにはあってcommon lispには無いものって細かいことを除けば > 継続と末尾再起の展開の規定くらいなものだろ おいおい、>>244たんの言いたいことが全然わかってないね。 言語設計の肝は機能の数ではなく、組み合わせによって いかにシンプルかつ豊かな表現力をつけるか、ってことなんだよ。
- 256 名前:デフォルトの名無しさん mailto:sage [04/01/12 04:14]
- >>251
一番大きいのは言語のポリシーの違い。
- 257 名前:デフォルトの名無しさん mailto:sage [04/01/12 06:24]
- cs1.cs.nyu.edu/leunga/www/MLRISC/Doc/html/index.html
www.cminusminus.org/ MLRISC とか C-- とかって誰か使っているのかな。
- 258 名前:デフォルトの名無しさん mailto:sage [04/01/12 07:55]
- >>241 の出典も知らないで「同意」とかほざいてる >>244 が Scheme をま
ともに知っているとは考えられない。
- 259 名前:デフォルトの名無しさん mailto:sage [04/01/12 08:49]
- そうは読めないけど。
- 260 名前:デフォルトの名無しさん mailto:sage [04/01/12 08:50]
- >>253
> 増えてるって末尾再起の展開か? > こんなもん実装詳細に分類されるものであって、 苦笑・・・
- 261 名前:デフォルトの名無しさん mailto:sage [04/01/12 08:52]
- >>258
> >>241 の出典も知らないで「同意」とかほざいてる >>244 が どうやって241の脳内を覗いたんだ?
- 262 名前:デフォルトの名無しさん mailto:??? [04/01/12 09:45]
- Javaベースのコンパイラコンパイラ
SableCC www.sablecc.org/home/ CUP & JLEX or CUP & JFlex CUP www.cs.princeton.edu/~appel/modern/java/CUP/why.html JLEX www.cs.princeton.edu/~appel/modern/java/JLex/ JFlex www.jflex.de/ ANTLR www.antlr.org/ JavaCC以外にもいろいろあるんすね JavaCCはLL(k)だけど、上のはANTLR以外はLALR(1) でもANTLRはC++なんかにも対応。 どれがつかいやすいのか。 Sableちょとみたところよさげだなと。
- 263 名前:262 mailto:??? [04/01/12 09:49]
- しつれー
上のSableCC URLつながってにゃい。 こっちからいけやす。 www.sablecc.org/
- 264 名前:デフォルトの名無しさん mailto:sage [04/01/12 09:49]
- おまえら、おちけつ
- 265 名前:デフォルトの名無しさん mailto:sage [04/01/12 09:57]
- >>240
>もし取り込むとしたら表記法は >Pointer<PointeeType> >Reference<ReferredType> 禿しく胴衣! だれか>>240言語実装してくれ俺には力不足だ。
- 266 名前:デフォルトの名無しさん mailto:sage [04/01/12 11:01]
- >>262
¬<><∪∪ ttp://ne.cs.uec.ac.jp/~koto/notavacc/ LALR(1) も追加しておいて。
- 267 名前:244 mailto:sage [04/01/12 12:39]
- >>258
ん? 流れの読めん不思議な断定はよしてくれ。 >>241の元ネタを知らずにどうやってSchemeを挙げられるっていうんだ。 偶然にしちゃできすぎだっつの。 ……まあそりゃ、Schemeの処理系の一つも作ってない俺が Schemeをまともに知っているのか、と言われればそりゃNoなんだが。
- 268 名前:王 [04/01/12 12:59]
- 今戻ったぞ。
今まで留守にしてすまなかったな。
- 269 名前:デフォルトの名無しさん mailto:sage [04/01/12 17:05]
- >>267
今から作ろうぜ! ヲチは俺に任せろ!
- 270 名前:デフォルトの名無しさん mailto:sage [04/01/13 00:19]
- >>268
真っ当な意見と見せかけ、実は詭弁で論点をはぐらかす輩が多々おります。 皆様も以下の「詭弁の特徴」を覚え、そういう輩を排除しましょう。。 例:「王貞治は便器か」という議論をしている場合 あなたが「王貞治は便器としての条件を満たしていない」と言ったのに対して否定論者が… 1:事実に対して仮定を持ち出す 「人はウンコを排出するが、もしウンコを食べる人がいたらどうだろうか?」 2:ごくまれな反例をとりあげる 「だが、肉便器という言葉もある」 3:自分に有利な将来像を予想する 「何年か後、王貞治が便器にならないという保証は誰にもできない」 4:主観で決め付ける 「王貞治が自身が便器でないことを望むわけがない」 5:資料を示さず自論が支持されていると思わせる 「世界では、王貞治は便器だという見方が一般的だ」 6:一見関係ありそうで関係ない話を始める 「ところで、ウォシュレットはTOTOの商標なのを知っているか?」 7:陰謀であると力説する 「それは、フジが悪いと認めると都合の良いアメリカが画策した陰謀だ」 8:知能障害を起こす 「何、王貞治ごときにマジになってやんの、バーカバーカ」 9:自分の見解を述べずに人格批判をする 「王貞治が便器じゃないなんて言う奴は、社会に出てない証拠。現実をみてみろよ」 10:ありえない解決策を図る 「王貞治が便器になれば良いって事でしょ」
- 271 名前:デフォルトの名無しさん [04/01/13 02:46]
- >>270
> 「それは、フジが悪いと認めると都合の良いアメリカが画策した陰謀だ」 フジって何だ? これが全然関係ない話を進める詭弁か?
- 272 名前:デフォルトの名無しさん mailto:sage [04/01/13 04:18]
- ttp://www.fujitv.co.jp/
- 273 名前:デフォルトの名無しさん [04/01/13 19:52]
- あたまでっかちな、実用的でないスレはここですか?
- 274 名前:デフォルトの名無しさん mailto:sage [04/01/13 22:40]
- もっとも実用的なのは機械語です。
- 275 名前:デフォルトの名無しさん [04/01/14 20:53]
- いつも思うんだけど、
++x と x++ を実現するのって結構むつかしいですね。 前者は簡単だけど、後者はどうしてます?
|

|