[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 03/03 02:04 / Filesize : 146 KB / Number-of Response : 879
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

D言語 Part28



1 名前:デフォルトの名無しさん mailto:sage [2011/08/24(水) 06:02:12.35 ]
プログラミング言語 D (D Programming Language) について語るスレッドです。

■前スレ
D言語 Part27
hibari.2ch.net/test/read.cgi/tech/1303022487/

■本家
www.digitalmars.com/d/
www.d-programming-language.org/ (ドキュメント)
www.kmonos.net/alang/d/ (和訳)

■コンパイラ
www.digitalmars.com/d/dcompiler.html (DMD, 本家)
dgcc.sourceforge.net/ (GDC, gccフロントエンド)
www.dsource.org/projects/ldc (LDC, バックエンドにLLVM)

■参考URL
f17.aaa.livedoor.jp/~labamba/ (D言語研究)
f17.aaa.livedoor.jp/~labamba/?D%B8%C0%B8%ECBOF (D言語BOF)
dsource.org/ (dsource)
tinyurl.com/candcpp2d2 (C/C++に疲れた人のD言語2.0)
www.kmonos.net/alang/wnd/ (わかったつもりになるD言語)
shinh.skr.jp/d/ (SDL, SDL_*, OpenGL, GLU, glutのポーティングとか)
shoo.s20.xrea.com/shoo/programing (D言語とTangoの入門講座)
www.nicovideo.jp/mylist/4453698 (D言語で作られた芝ゲー niconico動画)
www.asahi-net.or.jp/~cs8k-cyu/ (ABA Games)
dusers.dip.jp (D言語友の会)
www.wish.sakura.ne.jp/desuno/game/Drawing (PrincessDrawing! D言語で作られた横スクロールSTG)

310 名前:デフォルトの名無しさん mailto:sage [2011/10/14(金) 15:59:55.43 ]
ttp://cpplover.blogspot.com/2011/10/dart_13.html
某Dの人がDart->Dに置換しても通じるとか書いてるから読んでみたら
予想を遙かに超越してDそのまんまだった

まあDはC++も駆逐するけどな

311 名前:デフォルトの名無しさん mailto:sage [2011/10/14(金) 17:07:49.36 ]
はてブのコメントにマジレスの嵐w
Dart触ってみようかな。結局Goは敬遠してしまったし。

312 名前:デフォルトの名無しさん mailto:sage [2011/10/14(金) 17:44:36.58 ]
>>310
C系の記法から「常識的に考えて」導かれる記法だからねえ。
DはGCへの依存を弱めた記法を確立してbetter Cとしての立場を強めるとか
Variantを活用できるようになればなと思う。


313 名前:デフォルトの名無しさん mailto:sage [2011/10/15(土) 14:04:18.25 ]
iPhoneやらUbuntuやら、巷では破壊的変更に飛び込む勇者だらけなのに

指をくわえてみているだけのD言語erは まさかいないよな?

314 名前:デフォルトの名無しさん mailto:sage [2011/10/15(土) 17:09:54.34 ]
アップルが嫌いだからiPhoneには関わりません

315 名前:デフォルトの名無しさん mailto:sage [2011/10/15(土) 20:16:42.25 ]
一見破壊的にみえるだけで実は既存のものを延長した結果
という場合もあって一時的に不安定になるけど山を越えると
また安定してくるという…繰り返される歴史

山が高すぎると超えられない。というのもそれなりにありそうだけども

316 名前:デフォルトの名無しさん mailto:sage [2011/10/15(土) 21:20:44.29 ]
メモリ関係でバグが出ると挫折する

317 名前:デフォルトの名無しさん mailto:sage [2011/10/15(土) 22:06:47.85 ]
OPTLINKのバグとは戦えない

318 名前:デフォルトの名無しさん mailto:sage [2011/10/15(土) 23:16:06.35 ]
clangみたいにオープンな開発にすりゃいいのに
ウォルたん的にも別にクローズドな開発にする必要なさそうなもんだけど
せっかく発展の余地があるのにもったいない



319 名前:デフォルトの名無しさん mailto:sage [2011/10/17(月) 22:55:27.87 ]
dってオープンソースじゃなかったんですか

320 名前:デフォルトの名無しさん mailto:sage [2011/10/17(月) 22:59:05.96 ]
肝心なところは秘密

321 名前:デフォルトの名無しさん [2011/10/18(火) 18:31:28.75 ]
えっ

322 名前:デフォルトの名無しさん mailto:sage [2011/10/19(水) 01:06:12.82 ]
Webで使う分には実用に耐えるんですかね?


323 名前:デフォルトの名無しさん mailto:sage [2011/10/19(水) 22:33:35.30 ]
規模にもよる

324 名前:デフォルトの名無しさん mailto:sage [2011/10/19(水) 22:38:28.33 ]
CでWebアプリ書ける人なら楽勝

325 名前:デフォルトの名無しさん [2011/10/19(水) 23:50:24.13 ]
だね

326 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 00:11:13.61 ]
ideone.com/4V7My
テンプレート関数のマングリングがおかしい件

map file の tfunc を検索すると文字化けしてるのがわかる(WinXP 32)
やっと突き止めたぜ・・・


327 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 00:23:35.05 ]
もしかしてこれでOPTLINKの謎エラーが消滅するのか

328 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 01:37:23.43 ]
>>326
見落としがあった。保存するファイル名によって再現しなくなるwww
テンプレート云々じゃなくてトータルの文字数カモシレナイ



329 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 02:01:22.70 ]
test.dで

void o123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234(){}
void main(){
略();
}

だと正常、1文字付け加えると文字化けか
正常な場合は
_D4test115o123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234FZv
で丁度128文字だしトータル文字数で確かに間違いなさそうだね

330 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 02:14:16.76 ]
連投スマソ
マングリング後の修飾名の文字数→上限128文字を超えると化けた
Windows のみかも。ideoneでは再現せず
ideone.com/9TWvd

長いモジュール名(std.algorithmとか)ついたテンプレート使うと
簡単に引っかかっちまう

331 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 02:18:35.09 ]
連投スマソ と書いたけど先越されたw まあいいや
バグ報告しとく

332 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 03:59:19.24 ]
d.puremagic.com/issues/show_bug.cgi?id=6831
直せオラ! で押し通せばよかった・・・つかれた

333 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 10:57:51.06 ]
>>332
速攻でコメが来てる
・optlinkを直さないと対応できない
・linkerを書き直す計画はあるけどいつになるかわからん

やっぱりoptlinkは切らないとダメだな

334 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 19:02:40.75 ]
C/C++のプログラムをソースのみで配布するのは
社会に対する罪だと気づいた

335 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 19:35:40.51 ]
うん

336 名前:デフォルトの名無しさん mailto:sage [2011/10/20(木) 20:23:27.57 ]
その点Dのソースならガリガリ修正する楽しみがあって抜群の社会貢献度

337 名前:デフォルトの名無しさん mailto:sage [2011/10/21(金) 00:00:58.48 ]
optlinkってoptasmとなんか関係ある?

338 名前:デフォルトの名無しさん mailto:sage [2011/10/21(金) 15:06:13.85 ]
ないと思う



339 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 11:10:54.16 ]
D1からD2に移行したらDLLを動的ロードして使う部分で
謎のエラーというか色々意味不明な現象が発生するんで調べてみたら、
TLSのせいで複数回DLLがロードされているせいだった
なんちゅう盲点や

340 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 11:47:41.59 ]
データ領域は徹底的にデフォTLSにする方針だからなあ
知ってればどうってことないけど、チュートリアルでなるべく周知してかないと
他言語から移行する時の軽いハマりポイントになるかもね

スレッド大量に作るような方向へ向かおうとするんだと、
将来的にTLSでの静的初期化はもっと書きづらくして気軽にやれなくなったりして

341 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 18:21:11.00 ]
エラーになってくれればいいが何が起こるかわからんというのは困る

342 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 18:29:20.71 ]
そういう意味ではCとのインタフェースを残しているのがすごくマイナス

システム言語の看板を掲げるならデバッガが強力じゃないとつらいな

343 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 18:55:56.49 ]
そもそもスレッドを考慮して無いdllの造りが悪いんじゃないの?

344 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 19:17:08.83 ]
俺の為のチラ裏メモ
TLS = Thread local storage

345 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 19:28:29.22 ]
Walterは特にCライブラリをダイレクトに使えるのを大事にしてる気がするので、
避けては通れなさそうなんだよな。
Cなんて実質原始CLIみたいなもんなんだけど、デフォTLS前提としない言語外環境との連携をどう考えるか。

素のstatic thisはスレッド毎に走るのに注意、shared static thisはロックに注意、で当面しのぐしか無いがー

346 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 20:27:56.44 ]
スレッド使ったことないからその辺平気だぜ

347 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 10:38:48.83 ]
Visual Dの更新キタ
phbosでF1ヘルプ参照できるようになった

mago debugger を選んだ場合の機能が強化されてるみたいだがよくわからん

348 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 21:18:01.54 ]
特に理由はないんですが、GCJの過去問をDで解いてみようと思いました。
今日初めてD言語に触りました。
TopCoderとかのプログラミングコンテストでC++を使う場合は、
#defineを使ってforループの凡ミスを防ぐためにこんなことをします。

#define rep(i, n) for(int i=0; i<n; i++)

こうすることで以下のようなバグをなくすことができます。
for(int i=0; i<n; i++) {
  for(int j=0; j<n; i++) { // i++がバグ
    // do something
  }
}

代わりにこう書けるので、これに関してはバグがなくなります。
rep(i, n) {
  rep(j, n) {
    // do something
  }
}

D言語でも同じようなことができますか?
できないなら諦めますが、できるならその方法をご教示ください。



349 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 21:28:35.26 ]
Dにマクロはない。ので、同じことはできない。
代替の方法については、その例に限っていえばループを

foreach (i; 0..n) { // do something }

で、書けばバグを防ぐ役目は果たせるな。
もしくは
void rep(size_t rn, void delegate() dg) { foreach (0..rn) dg(); }
↑こういうのを定義しておけば
↓こう書ける。

rep(n, { // do something });

350 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 22:56:40.38 ]
C++でももうすぐforeach的なものが使えるからそれでいいじゃないか

351 名前:348 mailto:sage [2011/10/26(水) 22:59:11.58 ]
>349
即レスありがとうございました。
動作させることができました。
拡張性が高そうなので
foreach(i; 0..n)
を使うことにしました。
foreach(i; 1..n)
とかになっても簡単に書けそうなので。

とは言っても、もともとTangoを使っていて、それだと
foreach(i; 0..n)
がコンパイルできなかったので(found '..' when expecting ';' following 'for condition')、Phobosにコードを書き変えました。
PhobosだとWindowsでコンソールアプリを作るときに、文字化けしたと思うので、ちょっとイヤなんですが...。

352 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 23:01:25.17 ]
>>348
構文をこういう風に独自defineする人間の神経は疑うけどね

353 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 23:28:04.58 ]
tangoなんか使ってると恐い日本人コミッタのお兄さん達に睨まれるぞ

354 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 23:49:54.92 ]
にらまれてるしw

355 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 07:17:55.57 ]
dmd 1.071 and 2.056 release

356 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 11:31:57.49 ]
www.d-programming-language.org/intro-to-datetime.html
std.datetime の解説記事ができてた。

だれか翻訳をt(ry


357 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 13:39:27.54 ]
知ってるだろ? 法則があるのをさ……。

358 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 16:45:13.81 ]
Kには近づいてはならない!



359 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 19:04:21.39 ]
>>356
おお、簡潔な解説が出たのか!と思って行って著者名を見た時の絶望感

360 名前:デフォルトの名無しさん mailto:sage [2011/10/27(木) 23:43:09.19 ]
> dmd 1.071 and 2.056 release

今回のreleaseの大きいところは
Bugzilla 3748: inoutがまともに動くようになった
Bugzilla 3659: structのopEqualsシグネチャ制限がなくなった
Bugzilla 4022 他 CTFEでAAが結構まともに動くようになった
辺りかな。

361 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 00:00:52.95 ]
AAがなんの略だかわかんなくて五分くらい真剣に悩んだけど連想配列か

362 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 00:41:21.27 ]
> 360
dusers.dip.jp/modules/forum/index.php?topic_id=106

もう少し細かく書いた。

363 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 00:53:39.18 ]
今回のBugFixは、Regressionのが多いね

364 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 07:15:26.25 ]
いつも乙
D2もいよいよ安定してきてしまった感が

365 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 11:01:12.68 ]
バグフィックスの数に騙されるな
新たなバグもどんどん増えているぞ
コンパイルできないたすけて

366 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 13:15:23.42 ]
落ち着いて全部のライブラリをビルドしなおすんだ

367 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 13:32:44.02 ]
GUIライブラリってある?


368 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 18:54:26.37 ]
あるよ



369 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 19:01:44.43 ]
---
do
 if (derived is base)
  return true;
while ((derived = derived.base) !is null)
return false;
---
2.055までこれがコンパイル通ってたという事実に驚愕しきり

370 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 20:00:20.97 ]
>>368
たとえば?

371 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 21:09:23.72 ]
dusers.dip.jp/modules/wiki/?Libraries

372 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 21:22:12.52 ]
DFL,DWT(2),wxD,gtkD,QtDは去年の段階ではかろうじて生きてた
そこに載ってる他の奴は…死んでるねぇ…

373 名前:デフォルトの名無しさん mailto:sage [2011/10/28(金) 22:22:37.03 ]
>>369
そういうのは結構あると思う。
メチャメチャな文法はテストしにくい。
壊そうと遊んでたらいくつか見つけたことがある

374 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 03:48:19.15 ]
DFLの非公式githubは生きてる

375 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 06:58:28.32 ]
ライブラリフルコンパイルしたら案の定通らねーwww

376 名前:デフォルトの名無しさん mailto:sage [2011/10/29(土) 17:32:00.40 ]
なんの?

377 名前:デフォルトの名無しさん mailto:sage [2011/10/30(日) 03:46:05.26 ]
これしき

378 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 22:41:45.56 ]
そういうのいいから



379 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 23:03:33.24 ]
base a=new const(derived);が通る?

380 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 14:01:45.55 ]
const は全くアテにならない

381 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 00:39:57.71 ]
そんなー

382 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 00:56:58.89 ]
>> 369
do { ... } while(...) の後に;が必須になったやつか。
それは確かに自分も驚いた。

383 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 12:01:24.45 ]
おー、気づかなかったw
罠にしかならないから do - until に変えてほしいわ

384 名前:デフォルトの名無しさん mailto:sage [2011/11/03(木) 11:27:22.63 ]
GUIはfxlibが最低限の機能持ってて満足

385 名前:デフォルトの名無しさん mailto:sage [2011/11/03(木) 16:44:57.79 ]
DWT2め、Tableにマルチバイト文字を長々と表示させて
スクロールさせまくると表示だけ固まりやがる

386 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 01:15:46.11 ]
std.socketってどう変わったの?

387 名前:デフォルトの名無しさん mailto:sage [2011/11/05(土) 01:31:47.86 ]
重くなった

388 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 19:24:23.17 ]
そういえばstd.loaderってあるけどあれなんなの?
使って大丈夫なの?



389 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 21:35:45.31 ]
>>388
今見てみたら…
Windowsの部分は、Ansi系APIつかってる (Unicode文字を含んだPATHからは読み込めない)
しかもUTF-8←→Ansi変換が全くされてない (ノ∀`)アチャー

390 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 23:28:02.22 ]
これだから外人は

391 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 23:51:01.39 ]
ウォルター「え・・・」

392 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 13:08:11.03 ]
dmdでコンパイルしようとしたら、
OPTLINKのエラー(Error 42:Symbol Undefined)が大量に出てきた
visualC#を直前に入れていたので、C#アンインストールしても、
dmd入れなおしても直んないんだけど、どうすればいい?

以下エラー内容の最初の方
OPTLINK (R) for Win32 Release 8.00.12
Copyright (C) Digital Mars 1989-2010 All rights reserved.
www.digitalmars.com/ctg/optlink.html
OPTLINK : Warning 23: No Stack
test.obj(test)
Error 42: Symbol Undefined _D3std5stdio4File6__dtorMFZv
test.obj(test)
Error 42: Symbol Undefined __d_local_unwind2
test.obj(test)

393 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 13:10:33.20 ]
詳細書くの忘れてた
windows7 Ultimate 64bit版で起きた現象です

394 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 13:42:33.22 ]
main() が無い

395 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 16:09:19.80 ]
>>390-391
素人以下wwwwwwwww


396 名前:392 mailto:sage [2011/11/07(月) 17:24:59.79 ]
main()は書いてる。
dmdをinstallerで入れなおしたらエラーが下に変わった
(エラー内容抜粋)
OPTLINK (R) for Win32 Release 8.00.12
Copyright (C) Digital Mars 1989-2010 All rights reserved.
www.digitalmars.com/ctg/optlink.html
C:\D\dmd2\windows\bin\..\lib\phobos.lib(dmain2)
Error 42: Symbol Undefined _WideCharToMultiByte@32
C:\D\dmd2\windows\bin\..\lib\phobos.lib(dmain2)
Error 42: Symbol Undefined _LocalFree@4

397 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 18:18:07.51 ]
環境変数LIBがあやしい

398 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 22:55:54.28 ]
LIBってsc.iniで上書きされなかったっけ。
dmd入れ直してるならシロの気もするけど。




399 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 23:50:37.62 ]
Windows 64bit って動いてたっけ?

400 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 23:53:31.18 ]
win7 premiumだけど普通にコンパイルもリンクもexeそのものも動いてるよ
64bitのexeファイルが生成されてるわけじゃないけど

401 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 00:50:13.18 ]
コンパイルオプションで 64指定しなきゃいいのか
なるほど、思い出した

402 名前:sage [2011/11/08(火) 03:20:18.41 ]
Windowsで生成されるコードは常に32bitコードだよ
実行したプロセスをタスクマネージャで確認すれば判る

403 名前:デフォルトの名無しさん [2011/11/08(火) 04:46:18.03 ]
Windowsバイナリ生成に関して、 64bit版生成オプションは 存在してません。(キッパリ

404 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 22:05:18.25 ]
std.container.RedBlackTreeを使っていて、
「A以上B未満」な要素を列挙したいんですけどなんかうまい方法ありますか?
upperBoundとlowerBoundの両方を適用できたら楽だったんですが

405 名前:デフォルトの名無しさん mailto:sage [2011/11/10(木) 23:26:40.42 ]
もうやだこのOPTLINK…

406 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 00:57:10.96 ]
std.containerの中身はtakeだのwalkなんとかだの!魔界か!

407 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 01:37:29.92 ]
BufferedFileにSJISテキストかませると死ぬのどうにかなりませんか・・・

408 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 12:45:00.74 ]
ideone.com/kdNYw

こんな感じにforeachループ内で各ループのスコープ時の変数を
それぞれdelegateに渡したいんだけど、結果が全てループの最後の
時のもので処理されてしまうのです。何か良い方法ありますか。

Javaのfinal的なものが必要?



409 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 13:09:25.44 ]
ループ変数が使い回されてるのが原因だから。
対策はこんなか ideone.com/AZrzo

なんか既視感あるな

410 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 13:33:53.70 ]
なるほど、bindでいけるんですね。
ありがとうございます。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<146KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef