プログラミング言語 Rust 4【ワッチョイ】

1デフォルトの名無しさん (ワッチョイ 83b3-KDL3)
垢版 |
2017/12/24(日) 18:27:01.98ID:EGydBhQv0
Mozilla発のプログラミング言語「Rust」のスレです

■公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

■ワッチョイ
スレ建て時、一行目に
!extend:on:vvvvv:1000:512
を入れること

■派生元スレ
プログラミング言語 Rust 4
https://mevius.5ch.net/test/read.cgi/tech/1507970294/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
2018/05/08(火) 08:36:06.07ID:Hy6hpXT/M
まあコンパイルは遅いわな。
ていうかcargoの仕組みが問題なだけか?
2018/05/08(火) 20:14:50.84ID:T0pMALEX0
rustcで単一ファイルだけコンパイルすると結構速いなと思った
cargoって警告無視のオプション(-Awarning)の有無でも一からビルドしようとしたりちょくちょくお粗末
2018/05/10(木) 20:35:06.28ID:zLx1ZI770
なんかRustってテスト用と製品用で別々の最適化を施せるんじゃなかったっけ。
俺は自分の為だけにRustを使ってるのであまり気にしたことがないが。
2018/05/12(土) 12:11:46.40ID:OzyUIrxEM
https://blog.rust-lang.org/2018/05/10/Rust-1.26.html

impl Trait来たから
久しぶりにさわってみるかな
115デフォルトの名無しさん (JP 0Ha1-pXmg)
垢版 |
2018/05/23(水) 12:09:39.17ID:6kVmIohDH
ほとんどc++に見えるの俺だけ?
116デフォルトの名無しさん (ワッチョイ 5523-/w+O)
垢版 |
2018/05/23(水) 12:29:18.87ID:4/oN1Bt60
みんな言ってる
117デフォルトの名無しさん (ワッチョイ 89fa-9WOx)
垢版 |
2018/05/23(水) 23:15:50.94ID:Au5e7VGg0
確実にどんな人でも可能なネットで稼げる情報とか
念のためにのせておきます
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

C717P
118デフォルトの名無しさん (JP 0Hcd-6rHD)
垢版 |
2018/05/28(月) 09:59:15.77ID:N9/pBFPWH
rustを始めたんだけど
分かりそうで分からなくて
イライラする

なんだこの言語
2018/05/28(月) 11:01:04.58ID:4ZqBL5Re0
他の言語の経験にもよるけど 3000行ほど書けば慣れるよ(適当
120デフォルトの名無しさん (JP 0Hcd-6rHD)
垢版 |
2018/05/28(月) 11:14:23.86ID:N9/pBFPWH
actix_webでちょちょいとwebサービス作ろうと思っただけなんだが

externとuseみたいに、なんで同じようなものが2つ有るのとか

trait?、インプリすればいいだけならなんでこんな名前なんだとか
2018/05/28(月) 11:44:10.53ID:4ZqBL5Re0
察するにJava経験者かね

externは外部ライブラリのモジュールを参照する宣言
modは自身のフォルダ以下のモジュールを参照する宣言
useはモジュールの要素(Struct or Trait)を取り込む宣言

pub use self::MyStruct; // 要素をexportしたり
use std::io::Error as IOError; // as で別名つけたり
use super::Result; // 上位の型を取り込んだり(mod.rs以外からだと同一フォルダのmod.rsを見にいくので注意)

肝はselfとsuperを使いこなすことかと
このあたりリファレンスに書いてあるんで落ち着いて読んでもらえばいいけど

インプリについては、Trait = Interface(Java)の理解でそれほど差し支えない気もするけど
(定数は同じ階層のmoduleに移す)
AssosiatedTypeがあるように"Traitはコンパイル時に解決できる"ものってのを
意識してればその内に腑に落ちるんじゃないかな

ただこんなこと言うと
「RustのTraitは厳密なtraitじゃない論争」(Wikipedia参照)が始まっちゃうかもしれないので
ゆるく受け流してほしいところ
2018/05/28(月) 12:36:48.84ID:KX350+9ka
extern/use周りをrefineする話ってどうなった?
2018/05/28(月) 13:07:18.00ID:Yj33g/c2M
>>122
一応2018の予定には入ってるけどまだ作業中じゃない?
https://rust-lang-nursery.github.io/edition-guide/2018/transitioning/modules/path-clarity.html
124デフォルトの名無しさん (JP 0Hcd-6rHD)
垢版 |
2018/05/28(月) 14:35:19.27ID:N9/pBFPWH
チュートリアルの和訳のところを読んでいるけど
誰が訳したんだろう。。。
2018/05/28(月) 15:45:35.01ID:AY4+K2YC0
extern crateは、includeとかload libraryぐらいの意味だと思えばいいと思うが、
「え、それ、Cargo.tomlにもう書いたやん」って思うのは当然の感覚だな
126デフォルトの名無しさん (JP 0Hcd-6rHD)
垢版 |
2018/05/28(月) 15:47:39.28ID:N9/pBFPWH
しばらくしたら言語仕様変わりそうだなあこれ
勉強していくべきなのかどうか迷う
2018/05/28(月) 16:38:01.86ID:WepGeDn70
仕様の改定はc++のようにコンパイラのリリースとは別に2〜3年毎に定めることになってる
将来のコンパイラでも古い仕様を選択して使えるはず
2018/05/28(月) 17:33:13.35ID:dK7cJGyKa
どんな言語でも利用者多ければライブラリーのトレンド変わっていって学び直しはあるし
言語仕様の変更だけ特別視する理由が分からん
2018/05/28(月) 18:01:33.70ID:b/gKZOsn0
ver1.0になったし、firefoxに200kstepのソースがあるから始めるなら今でしょ
2018/05/28(月) 21:33:55.19ID:hIMCbSeD0
ruby1.8から1.9とか
python2から3の変更とか
嫌じゃん

言語もライブラリも混在してぐちゃぐちゃ
2018/05/28(月) 22:15:42.81ID:dVAXJXVu0
>>124
和訳は最新に追いついていないと思います、公式英文を確認したほうがいい
2018/05/28(月) 23:47:10.84ID:cVR0FGXk0
Rustの場合仕様変更の影響を受ける記述はコンパイラがwarning(とsuggestion)出してくれるみたいだし
むしろライブラリのアップデートより楽なんじゃないかな
2018/05/29(火) 08:16:58.71ID:dnBokp3T0
やりたいことをするのに1日使って50%しかできなかった

自分には無理だこの言語
2018/05/29(火) 08:53:39.83ID:GEfewF+tM
50%できればすごいって
2018/06/01(金) 07:30:04.93ID:gpIIxUGF0
1.26の新機能自分のcrateにもう入れた?
2018/06/01(金) 19:39:19.80ID:RsiXZK4kM
土台?
2018/06/11(月) 19:45:35.17ID:woYxJr3K0
ここにまともなRustユーザいないのは年寄りしかいないからなのかなぁ
2018/06/12(火) 00:28:40.74ID:U7oXkFlj0
slackかtwitterでコミュニケーションとれるので5chへ書き込みたい事情があまりない
2018/06/12(火) 00:34:57.69ID:QT2PgMnm0
>>138
おすすめのハッシュタグはなんでしょうか?
2018/06/12(火) 08:25:35.49ID:ESFTg/QrM
そう言われてみると確かにない。
2018/06/12(火) 09:41:15.21ID:Sk+2Pu3l0
もっとメジャーになってslackが荒れて来たらここもワンちゃん
2018/06/12(火) 12:05:43.89ID:QKuSZN5/a
ハッシュタグというより界隈の人間フォローしてる
2018/06/12(火) 19:39:13.56ID:twlm3/XD0
slackで発言できないアンチにしか存在価値がないのかぁ
2018/06/12(火) 21:30:56.05ID:d/RZ9PcJ0
slackのどこで喋ってるの?さ
2018/06/13(水) 07:40:50.77ID:Iw3p0Ou70
アンチに限らず匿名文化は一定数必要でしょう。
2018/06/13(水) 13:01:46.22ID:jLut3S1H0
つまり変な人でもスレに繰るなら、山の賑わい人気の証ってことね
2018/06/23(土) 20:45:08.63ID:MX9PBj5g0
Vec内のアイテムを複数条件やand or等をユーザに指定させてフィルタリングをしたいのですが
無理にでもSQL使うべきでしょうか
2018/06/23(土) 21:11:19.63ID:SR6K28vn0
ユーザってのはどういうレイヤの話をしてるの?もう少し具体的に書かないと意味不明
2018/06/24(日) 23:27:10.18ID:FVTH6Flp0
values.iter().filter(hoge).filter(fuga).filter(piyo)
フィルターを何度がけすると型がやばそう
2018/06/25(月) 00:28:41.79ID:TWt9PpKD0
強引にやるのはやばい感じだね

https://ideone.com/3oy3FW
2018/06/25(月) 07:08:50.50ID:xxjb5DLL0
調べてみるとfiltersというクレートがありました
2018/06/28(木) 08:09:41.33ID:t6K5m67F0
New Photon Release of Eclipse IDE Ships With Full Rust Support
https://www.eclipse.org/org/press-release/20180627_new-photon-release-of-eclipse-ide-ships-with-full-rust-support.php
2018/07/01(日) 02:21:52.91ID:hOXxhpxn0
いやじゃ、いやじゃ、Eclipseなんぞ使いとうない
2018/07/01(日) 03:02:12.97ID:T78MqQu/0
みんなどんな環境で書いてるの?今はvscode使ってるんだけどrlsがあまりに不安定すぎてストレスが…
2018/07/01(日) 06:22:17.39ID:3lsiwbVs0
vscodeだよ
racerも不安定だったような
2018/07/01(日) 09:29:47.37ID:61/yGhxs0
emacs + flycheck
racerは重すぎるんでOFFにしてる
157デフォルトの名無しさん (アウウィフ FF85-mzC7)
垢版 |
2018/07/01(日) 15:40:20.37ID:ep584YMHF
秀丸
158デフォルトの名無しさん (ワッチョイ 79b3-HrKv)
垢版 |
2018/07/01(日) 18:12:28.40ID:VIP13YQk0
禿丸ってなに?
2018/07/01(日) 19:19:06.36ID:3lsiwbVs0
こっちまでネタスレかよ
160デフォルトの名無しさん (ブーイモ MM22-Unb+)
垢版 |
2018/07/03(火) 18:54:31.94ID:A246qspJM
https://i.imgur.com/VVJNac4.jpg
161デフォルトの名無しさん (ワッチョイ 45fa-2e90)
垢版 |
2018/07/04(水) 21:50:46.22ID:gFgZc5FG0
5PW
162デフォルトの名無しさん (ブーイモ MM2b-0Xn2)
垢版 |
2018/07/05(木) 00:59:18.40ID:lJi2a9VDM
おーい、hgmr
2018/07/28(土) 09:13:36.59ID:pjkfXvHGM
hnmr王子〜♪
164デフォルトの名無しさん (ワッチョイ 12d5-YWSl)
垢版 |
2018/07/29(日) 02:13:01.57ID:QHCaZ13N0
まさか繋いでくれる人がいるとは思わなかった
2018/07/31(火) 16:45:34.48ID:0aJU5h1JM
花村てなんや
オーバーウォッチか
2018/08/05(日) 20:37:41.10ID:XPCi/u53M
王子に対し無礼であろう!
https://www.nhk.or.jp/archives/sp/search/special/detail/?d=youth007
2020/11/25(水) 00:47:44.38ID:lt8VNqOR0
るすと
168デフォルトの名無しさん (ワッチョイ dfad-VZQ6)
垢版 |
2022/05/03(火) 15:19:34.90ID:FP7f4hyR0
Rの発音が難しい
2022/08/07(日) 14:18:50.38ID:Xv2x2xOXM
うんこすレッド
170デフォルトの名無しさん (ワッチョイ 7501-zStA)
垢版 |
2022/11/13(日) 22:46:23.74ID:gb51z1Py0
日本語の発音ってかイントネーションはみんなどっち?
ラスト(ミファファ=スタバ)
ラスト(ミドド=ベスト(着る方))
2022/11/16(水) 18:15:29.98ID:QMFF+6AxM
1オクターブ上のドでミドド
172デフォルトの名無しさん (ワッチョイ 1f5f-MR5z)
垢版 |
2022/12/18(日) 17:46:12.72ID:fqk1SiW30
本スレ最近ひどいね
age
173デフォルトの名無しさん (ワッチョイ d3c9-tb1I)
垢版 |
2023/01/09(月) 20:41:28.12ID:XnWHdmBW0
Rustの型って何を言ってるのか良う分からないくらい一気に複雑になるんだけど、改善の兆しってある?
filter(|x| ...).map.(|x| ...)ってやると戻り値がMap<Filter<...>>みたいに、情報量がほぼ増えないのに型の表記だけが増えてくのが見づらくてしゃあないんだが

「ここを関数に切り出しておきたい」ってのも難しくね?
impl Traitあるだろって言われるけど、自分ひとりでできた試しが無い
2023/01/09(月) 22:31:09.52ID:ZXgjuOo50
>>173
.filter(|x| ...).map.(|x| …)とやったら
ざっくり言うと戻り値はIterator<Item=T>でowned, shared reference, mutable referenceの3種類
Map<Filter<...>>とかの詳細な型を知りたいと思うことは基本ないからそこまで困らない
デコレータとかコンポジション的なものとして理解しとけばいいと思う

関数に切り出すのはGC言語と比べると難しい
どの値の所有権をどの呼び出しレイヤーで保持すべきかを整理しながらリファクタリングする必要がある
ただある程度パターンがあるからそれが理解できるとそこまで難しくはない
175デフォルトの名無しさん (ワッチョイ d3c9-c71v)
垢版 |
2023/01/11(水) 20:45:10.66ID:+OHiCBbi0
>>174
標準ライブラリでiteratorのメソッドならそうなんだろうな、って他言語でも溜め込んだ知識で何とかなるけどさ、
例えばwarpっていうWebフレームワークはリクエストの解決にfilterを使ってるんだけど、
https://docs.rs/warp/latest/warp/filters/index.html
↑ここからたどって、例えばリクエストのパスにマッチするフィルタを作成するwarp::filters::pathってのがあるんだけど、
こいつの戻り値が独自型のExactってやつなのね

warp作ってる人はここに様々な条件を追加できるようにしているんだけど、pathの戻り値にどう組み合わせられるかってのをどう探せるんだろっていつもなってる
他のcrateも、単機能で目的果たせるライブラリならまだいいけど、高階関数で機能組み合わせてねってやつはrustdoc見ても意味が分からなくなってる
2023/01/11(水) 23:31:54.91ID:B6T7GQUU0
>>175
ExactがFilterだと分かれば別のFilterを組み合わせられることはわかるでしょ?

warpのFilterシステムを理解させるための解説ドキュメントが不足してるのと
他で類似の仕組みをあまり経験したことがないのが理由なんじゃないのかな?

型が入れ子の形でチェインされてる状態に慣れてないから
それがわかりにくさの原因のように感じるかもしれないけど
JavaやgoのReader/Writerみたいにデコレータ的に型を重ねていくのはそんな特殊なことじゃないよ
2023/01/12(木) 07:36:35.15ID:fjq3kaV70
iterator系の処理はどんな言語でもやりすぎると意味不明なんでいい単位で説明変数や関数に切り出すのは大事だよ。
2023/01/12(木) 10:57:06.97ID:yHqsf2Vi0
関数単位で切り出す場合はimpl TraitやBox<dyn Trait>使った方が良いと思う
実装の詳細が型として露出してしまうのはよろしくないし
何より長い型を書き下すのはめんどくさい
179デフォルトの名無しさん (ワッチョイ d3c9-tb1I)
垢版 |
2023/01/13(金) 00:49:21.00ID:Eg8x4Zf+0
>>176 いやExactがFilterかどうかが分からないんだ。自信が無い
https://docs.rs/warp/latest/warp/filters/path/struct.Exact.html
https://docs.rs/warp/latest/warp/trait.Filter.html
↑2つを見ても、ExactがFilterをimplしているとは書いてないんだ
知ってたらマジで教えてほしいんだが、どこ見ればいいの?

>>178 そう思うのは人情だが、じゃあどういう型の関数にすればいいのかって話
ググらずに分かる?俺は分からなかった
180デフォルトの名無しさん (ワッチョイ 795f-H4iZ)
垢版 |
2023/01/13(金) 01:52:07.98ID:USdCnak/0
>>179
非公開の(だけど実装が漏れている)FilterBaseトレイトを介してFilterを実装してるんだね……
FilterBaseが公開されていればExactのblanket implementationsに出てくるはず

同じことは指摘されているが放置されている模様
https://github.com/seanmonstar/warp/issues/742
2023/01/13(金) 20:16:02.99ID:Eg8x4Zf+0
もしかして特段に分かりづらい構造だったのかWarp
2023/01/13(金) 21:03:44.68ID:4YqzJ2Gc0
Sealed TraitっていうユーザーにTraitを実装させないための一般的なパターンなんだけど
privateなTraitはドキュメントには現れないのでExactがFilterBaseを実装してることを確かめたければソースを見るしかない

でも関数や構造体の説明にFilterだよって書いてるんだからまずはそこからじゃないか?
path()「Create an exact match path segment Filter.」
Exact「A Filter matching an exact path segment.」
183デフォルトの名無しさん (ワッチョイ eac9-KPE0)
垢版 |
2023/01/14(土) 03:14:01.24ID:4QhVLL220
いや型の説明がコメントにしか無いかったら疑うのが基本じゃないか…?
説明にある通りの使い方はできるけど、何故そう使えるのか分からない、となった上での話
前にもちらっと書いたところもそうなんだけど、impl Filterを返す関数のシグネチャも独力だと分からなかったんだよ。もっと情報の少ないクレートでやる必要が出てきたら詰んじゃう
2023/01/19(木) 13:09:59.92ID:CHvJHSS40
[T]と[T; N]があるように
strに対するSizedなstr<N>とかできんかね
2023/01/29(日) 03:46:54.24ID:qSgQK/Ke0
ttps://doc.rust-lang.org/beta/unstable-book/language-features/yeet-expr.html

名前の元ネタがよくわからん
2023/01/29(日) 04:28:40.21ID:iZgCgX3R0
>>185
trY Early-ExiT で yeet じゃない?
experimental だからわざとクソ命名してそう。
2023/01/29(日) 08:29:44.05ID:VTBemk9l0
意味合いとしては
> Yeet is a slang phrase meaning to throw with force
とのことらしい
https://internals.rust-lang.org/t/syntax-for-returning-early-with-an-error/14181
https://www.urbandictionary.com/define.php?term=Yeet

yeetの初出はここらしい
https://mobile.twitter.com/josh_triplett/status/1248658754976927750
命名に関するbikeshedを避けつつ機能を実験するために導入するみたいね
https://twitter.com/5chan_nel (5ch newer account)
2023/02/04(土) 16:11:28.39ID:4OrKEijd0
Servoプロジェクトが再始動
https://servo.org/blog/2023/01/16/servo-2023/
https://servo.org/blog/2023/02/03/servo-2023-roadmap/
189デフォルトの名無しさん (ドコグロ MM49-+MOc)
垢版 |
2023/02/26(日) 21:57:18.73ID:vJeOsMT8M
新スレとして再利用と聞いてage
190デフォルトの名無しさん (ワッチョイ 615f-+MOc)
垢版 |
2023/03/02(木) 01:57:12.70ID:9x7ptNRV0
ProviderとDemandってCOMのQueryInterface的な使い方もできるのかな
191デフォルトの名無しさん (ワッチョイ 715f-BZjt)
垢版 |
2023/03/07(火) 03:24:09.91ID:CjRtBzJ10
Bevy 0.10 is out now!
https://bevyengine.org/news/bevy-0-10/
192デフォルトの名無しさん (ワッチョイ 715f-h7+G)
垢版 |
2023/03/10(金) 03:58:23.25ID:9+yNdzD90
Announcing Rust 1.68.0
https://blog.rust-lang.org/2023/03/09/Rust-1.68.0.html

今回は小粒?
2023/03/10(金) 11:19:42.21ID:Rc7TQThZ0
cargoのsparse protocolは嬉しい
2023/03/15(水) 08:26:46.78ID:L9HRqQqHM
Default alloc error handlerはLinus指摘の取り込みかな。
2023/03/15(水) 10:58:18.74ID:efRde3jV0
Linusの話は、メモリアロケーション失敗時にpanicするなという話だと思うけど、今回の変更とは全く関係ない

今回の変更でalloc crateがalloc_error_handlerのデフォルト実装を提供するようになった
新たに提供されたalloc_error_handlerはpanicする実装になっているので、メモリアロケーション失敗時にpanicになることは変わらない
単に、利用者がalloc_error_handlerを独自に実装する必要がなくなったというだけ

Linusの指摘に対しては、Box::try_newなどのアロケーション失敗を呼び出し元に通知するAPIを用意することで対応している
2023/03/15(水) 12:35:43.18ID:i0vzrjRpM
>>195
サンクス。
Linusは「単にエラーを返せ」と言っていたから、error handlerじゃ確かに駄目だね。
2023/03/15(水) 13:35:50.81ID:jUGp7X9a0
Rust製の高速なwebpack互換バンドラ「Rspack」登場。現時点で5倍から10倍の性能向上
https://www.publickey1.jp/blog/23/rustwebpackrspack510.html

> Rust製の高速なバンドラとしては、webpackの主要な開発者がNext.jsに入社してwebpackの後継として開発している「Turbopack」もあります。
> 現時点ではまだwebpackが抜きん出た人気を得ていますが、現時点で主要な開発者が抜けてしまったwebpack後継の座を狙った競争が始まったといえそうです。
2023/03/26(日) 17:12:36.73ID:EfkiJTmm0
>>197
ちょっとスレチ気味だけれど
Turbopack(新調で700倍高速) vs Rspack(互換性維持で5~10倍高速)
webpackからの乗り換えはしばらく様子見
199デフォルトの名無しさん (ワッチョイ e510-t3VU)
垢版 |
2023/03/27(月) 08:53:03.64ID:ZY+RQ7940
一度普及したソフトの作者自身が後継プロジェクトを立ち上げてもなぜかうまくいかない法則
2023/03/27(月) 09:40:06.58ID:AuSpH/AF0
Rust遅くね?
2023/03/27(月) 10:40:29.19ID:jab4un3HM
速度遅くてもウケたプロダクトの動作速度上げたところで
現行をリプレイスする理由にならないからな
それにRustがいかに速かろうと今の時代ネックはIOである可能性が高いし
2023/03/27(月) 12:01:17.21ID:eSvQrfce0
>>200
詳しく見ていないけど、ロジックにボトルネックがあるのかもね。
2023/03/27(月) 16:02:39.08ID:IjV2Ctjk0
10倍のオーダーで速度差出るなら性能がリプレース理由になる場合も増えると思うよ
数分かかる処理が数秒で終わると快適さが全然違うだろうし
2023/03/27(月) 16:27:48.16ID:Fq2x4U//0
>>201
どうせ IO がネックだからってのは昔から言われてることだけど
クラウドサービスを前提にすると事情が違うと聞いたことがある。

レスポンスタイムにあまり差が無かったとしても課金は演算量 (CPU の使用量) に対して
だからなるべく効率的に実行できる言語を使ったほうが安く上がるんだとさ。
2023/03/27(月) 23:41:07.73ID:t8oeSgw5a
Ruby on Rails 6 では、webpack が標準だったけど、
Rails 7 では、Import Maps で、CDN から直接インポートするように変わった。
脱webpack/node.js

ES2015 に対応していないブラウザ用に、バンドルする方法もある。
バンドラーは、esbuild, rollup, webpackの3つ
2023/04/17(月) 10:02:11.42ID:Dh5lk+HW0
ドキュメントコメントを reStructuredText で書きたい
2023/04/24(月) 12:17:06.73ID:LQT8UQ2a0
let-else の else ブロックの中だけ rustfmt 効かなくて設定間違えたかと思ったら
フツーに未対応だった
https://github.com/rust-lang/rustfmt/issues/4914
208デフォルトの名無しさん (ブーイモ MM8e-sjlm)
垢版 |
2023/04/24(月) 18:39:33.31ID:75I/tfQdM
let-elseは鬼っ子だから
改行位置決めるのも大変
2023/04/24(月) 18:43:14.72ID:3hT7+QpVM
横から済みませんがが、
Rust で Vec に要素を追加した場合にメモリー不足になったかどうかを検出
するのはどうしたらよいんでしたっけ?
210デフォルトの名無しさん (ブーイモ MM8e-sjlm)
垢版 |
2023/04/24(月) 18:47:43.95ID:fDr9n68aM
try_reserve
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況