前スレ
ぶっちゃけ始めるのにいい言語て何 part6
https://mevius.5ch.net/test/read.cgi/tech/1628771431/
探検
ぶっちゃけ始めるのにいい言語て何 part7
■ このスレッドは過去ログ倉庫に格納されています
2021/09/12(日) 12:56:23.75ID:5CNhVmk1
459デフォルトの名無しさん
2021/10/02(土) 21:48:51.38ID:0KUEFcg9 HaskellもRustも今話題の教え魔がいるから気を付けてωωω
460デフォルトの名無しさん
2021/10/02(土) 23:17:32.02ID:ZcC0XUw6 もうみんなGoogle様が全部教えてくれるから人はいらんのか
461デフォルトの名無しさん
2021/10/02(土) 23:49:53.54ID:5h/MmOWv C言語勧める人が多くいるみたいだけど、それだとオブジェクト指向プログラミングが
身に付きにくいという欠点がある
身に付きにくいという欠点がある
462デフォルトの名無しさん
2021/10/03(日) 01:33:13.94ID:KmrfXwVi 初プログラミング言語がRustで成果物作れる初心者がいるなら
どうにでもなると思うがな
他言語習得とか余裕だろ
どうにでもなると思うがな
他言語習得とか余裕だろ
463デフォルトの名無しさん
2021/10/03(日) 02:42:34.00ID:PiWMVJtu なんだかんだ言ってやっぱCだな
これやっとけば潰しが利く
これやっとけば潰しが利く
464461
2021/10/03(日) 03:36:44.49ID:p2o58jTf まあ最初は手続き型から入った方が挫折する確率は低くなるな、確かに
取り消すわ、「時間に余裕がある人が最初にやるなら」Cなどの手続き型言語が
いいかな
取り消すわ、「時間に余裕がある人が最初にやるなら」Cなどの手続き型言語が
いいかな
465デフォルトの名無しさん
2021/10/03(日) 06:18:22.71ID:KmrfXwVi 必ず習得できるってのを前提で話すのと
初心者が挫折しにくいってのを考慮するのとは違ってるわな
ほとんどの人がプログラミング言語は挫折するんだから
この板に居るやつらはある意味選ばれてる
初心者が挫折しにくいってのを考慮するのとは違ってるわな
ほとんどの人がプログラミング言語は挫折するんだから
この板に居るやつらはある意味選ばれてる
466デフォルトの名無しさん
2021/10/03(日) 08:01:04.50ID:HPHAYmWR 挫折するってのは適性がなかったってだけだろ
プログラムだけじゃな技術職も一緒
技術的な事を覚えるには時間がかかる
プログラムだけじゃな技術職も一緒
技術的な事を覚えるには時間がかかる
467デフォルトの名無しさん
2021/10/03(日) 08:06:17.51ID:HPHAYmWR それを適性が無いやつでも派遣みたいな形で使おうとするから無理が出る
某銀行みたいに
某銀行みたいに
468デフォルトの名無しさん
2021/10/03(日) 08:25:42.86ID:ZsU75BT9469デフォルトの名無しさん
2021/10/03(日) 09:34:55.83ID:jLLTLrs9470Mb
2021/10/03(日) 15:02:13.29ID:13zKiOvX >>455
> 数学脳に育ってない子供が数理判断に苦手意識を持つ
言いたいことはよく分かるし賛成もするが、多少の誤解もあると思う。
日本語で「数学」というと、「純粋数学」を指すんだよね。
だけど、本来の「数学」には純粋数学以外にも数学基礎論とか
計算数学というものがあって、プログラミング言語というのは
計算数学寄りなので、他の二つよりよっぽど歴史が古い、というか
もう史料が残っていないくらい昔から存在する。
いわゆる「数学」に属す純粋数学や物理数学や数学基礎論なんていうのは、
近世以降に登場した「若造」でしかなく、二十世紀に入ってようやく
襁褓が取れた程度の学問でしかない。
そういう観点からいうと、「算数よりも数学のほうが上」みたいな
差別をなくすのがまず課題だと思う。
> 数学脳に育ってない子供が数理判断に苦手意識を持つ
言いたいことはよく分かるし賛成もするが、多少の誤解もあると思う。
日本語で「数学」というと、「純粋数学」を指すんだよね。
だけど、本来の「数学」には純粋数学以外にも数学基礎論とか
計算数学というものがあって、プログラミング言語というのは
計算数学寄りなので、他の二つよりよっぽど歴史が古い、というか
もう史料が残っていないくらい昔から存在する。
いわゆる「数学」に属す純粋数学や物理数学や数学基礎論なんていうのは、
近世以降に登場した「若造」でしかなく、二十世紀に入ってようやく
襁褓が取れた程度の学問でしかない。
そういう観点からいうと、「算数よりも数学のほうが上」みたいな
差別をなくすのがまず課題だと思う。
471デフォルトの名無しさん
2021/10/03(日) 16:07:25.45ID:mGsWKLWn 例えばHaskellでの数学の圏論(モナド)の仕組みをRustが採り入れて応用例の一つが
>>184のthrow/catch例外処理を無くして代わりに"?"オペレーターで機構も表記も簡潔にしたものです
つまりプログラミング手法&機構そのものにも大きく影響を与えているのです
>>184のthrow/catch例外処理を無くして代わりに"?"オペレーターで機構も表記も簡潔にしたものです
つまりプログラミング手法&機構そのものにも大きく影響を与えているのです
472デフォルトの名無しさん
2021/10/03(日) 16:08:46.04ID:45cLxSS6 言いたいことはさっぱりわからないから誤解も賛成もへったくれもない
473デフォルトの名無しさん
2021/10/03(日) 17:30:17.56ID:44zxNCu2 try-throw-catchという特別な枠組みを持ち込まなくても、同等の処理を複雑な記述することなくプログラミングできるようになったRustは凄いですけど、大元のモナド(圏論)を知らずとも成果を享受できる点が良いですね。
474デフォルトの名無しさん
2021/10/03(日) 17:41:11.95ID:YoCqWRPI その、君たちの捏ねて捏ねて暗黒になるほどに
捏ねて捏ねていくのって性格なの?
なんかすっごいネットりしたものが
肌にべったりくっついてしまった感を感じ得るのだけれど
捏ねて捏ねていくのって性格なの?
なんかすっごいネットりしたものが
肌にべったりくっついてしまった感を感じ得るのだけれど
475デフォルトの名無しさん
2021/10/03(日) 18:04:53.34ID:mGsWKLWn 代数的にはEitherモナド型の一種だけど
Rustでは値付きEnumすなわちタグ付きユニオンで表現されているからね
それにより正常時返り値T型とエラー時返り値E型を包み込んでResult<T,E>型としている
Rustでは値付きEnumすなわちタグ付きユニオンで表現されているからね
それにより正常時返り値T型とエラー時返り値E型を包み込んでResult<T,E>型としている
476Mb
2021/10/03(日) 20:51:05.53ID:13zKiOvX ひとこと言わせてもらうと、
そういった議論は非常に興味深いんだが、
「ぶっちゃけ始めるのにいい言語て何」というスレッドで
議論するような話題ではないように思う。
別スレを立てて、そっちに誘導したほうが
生産的なんじゃないだろうかと思う。
たとえば、「これからプログラミングを始めたいと思っているひとに、
何を学んでほしいか」みたいな話(上から目線で申し訳ないが、
世代が古いので、そこは経験値としてご勘弁・ご容赦いただきたい)
で、なんとかならないかと思う。
なんか、適当なスレタイはないか?
そういった議論は非常に興味深いんだが、
「ぶっちゃけ始めるのにいい言語て何」というスレッドで
議論するような話題ではないように思う。
別スレを立てて、そっちに誘導したほうが
生産的なんじゃないだろうかと思う。
たとえば、「これからプログラミングを始めたいと思っているひとに、
何を学んでほしいか」みたいな話(上から目線で申し訳ないが、
世代が古いので、そこは経験値としてご勘弁・ご容赦いただきたい)
で、なんとかならないかと思う。
なんか、適当なスレタイはないか?
477デフォルトの名無しさん
2021/10/03(日) 21:24:05.97ID:w0JYxZaJ これでいいんじゃね?
「初心者には絶対お勧めできない言語や方法や手段を勧めているヤツを晒すスレ」
「初心者には絶対お勧めできない言語や方法や手段を勧めているヤツを晒すスレ」
478デフォルトの名無しさん
2021/10/03(日) 21:25:31.62ID:HpYMQ5fy >>475
代数的データ型ってRustでは何っていうんだっけ?
単にRust界ではEnumで通ってるんだっけ?
とおもってぐぐってみたら…
https://doc.rust-jp.rs/book-ja/ch06-00-enums.html
> 列挙型は、enumとも称されます。
> (略)
> enumは多くの言語に存在する機能ですが、その能力は言語ごとに異なります。
> Rustのenumは、F#、OCaml、Haskellなどの、 関数型言語に存在する代数的データ型に最も酷似しています。
なんだよ「酷似しています」ってw
代数的データ型とは言い切らずにあくまで列挙型なんだな
代数的データ型ってRustでは何っていうんだっけ?
単にRust界ではEnumで通ってるんだっけ?
とおもってぐぐってみたら…
https://doc.rust-jp.rs/book-ja/ch06-00-enums.html
> 列挙型は、enumとも称されます。
> (略)
> enumは多くの言語に存在する機能ですが、その能力は言語ごとに異なります。
> Rustのenumは、F#、OCaml、Haskellなどの、 関数型言語に存在する代数的データ型に最も酷似しています。
なんだよ「酷似しています」ってw
代数的データ型とは言い切らずにあくまで列挙型なんだな
479デフォルトの名無しさん
2021/10/03(日) 21:53:41.62ID:Fj8TwfDX あわしろ氏がお勧めする数学志向言語Haskell。
480デフォルトの名無しさん
2021/10/03(日) 21:57:06.64ID:44zxNCu2 >>478
普通のプログラミング言語のenumは列挙された定数に過ぎないけど、Rustのenumは複数(0個以上)の任意の型の変数(または定数)を構成要素に取ることが出来、またパターンマッチングも可能なことから、代数的データ型と明言してよいかと思います。
一般的に、直和(型指定値付enumまたはタグ付union)と直積(struct)を組み合わせることで多彩な代数的データ表現をすることが出来ますが、Rustはそれを満たしていますね。
普通のプログラミング言語のenumは列挙された定数に過ぎないけど、Rustのenumは複数(0個以上)の任意の型の変数(または定数)を構成要素に取ることが出来、またパターンマッチングも可能なことから、代数的データ型と明言してよいかと思います。
一般的に、直和(型指定値付enumまたはタグ付union)と直積(struct)を組み合わせることで多彩な代数的データ表現をすることが出来ますが、Rustはそれを満たしていますね。
481デフォルトの名無しさん
2021/10/03(日) 22:15:54.35ID:w0JYxZaJ 配列にマイナスのインデックスを指定できない時点でRustはPythonの代わりにはならへんわな
482デフォルトの名無しさん
2021/10/03(日) 23:13:35.99ID:Fj8TwfDX その通り。
Rustは甘え。
Rustは甘え。
483デフォルトの名無しさん
2021/10/04(月) 00:46:36.47ID:dVk2OB8l >>481
それはPythonやRubyの仕様がおかしくてPythonやRubyがダメな言語であると結論が出ている話
【プログラミングのミスを見逃す】
・配列のインデックスがプログラミングミスで範囲外の負の数になったのか意図的に最後の要素からインデックスしたいのか区別がつかない
・そのためほとんどのプログラミング言語では範囲外のインデックスはエラーとなってくれるので負の数だと最後の要素からインデックスすることはない
【インデックスに正しい負の数を使えなくなる】
・インデックスの開始を負の数に指定できるプログラミング言語も多数あるため負の数だと最後の要素からインデックスする仕様があると矛盾してしまう
・C言語では配列のインデックスは常に0スタートだが配列アクセスにポインタを代わりに使えるため負の数のインデックスが範囲内のこともあるし範囲外だとしてもそのアドレスの値となる
それはPythonやRubyの仕様がおかしくてPythonやRubyがダメな言語であると結論が出ている話
【プログラミングのミスを見逃す】
・配列のインデックスがプログラミングミスで範囲外の負の数になったのか意図的に最後の要素からインデックスしたいのか区別がつかない
・そのためほとんどのプログラミング言語では範囲外のインデックスはエラーとなってくれるので負の数だと最後の要素からインデックスすることはない
【インデックスに正しい負の数を使えなくなる】
・インデックスの開始を負の数に指定できるプログラミング言語も多数あるため負の数だと最後の要素からインデックスする仕様があると矛盾してしまう
・C言語では配列のインデックスは常に0スタートだが配列アクセスにポインタを代わりに使えるため負の数のインデックスが範囲内のこともあるし範囲外だとしてもそのアドレスの値となる
484デフォルトの名無しさん
2021/10/04(月) 00:49:57.04ID:ereBJRiQ 文系が得意げな顔でやりそうなこったな!ケッ!
485デフォルトの名無しさん
2021/10/04(月) 02:22:49.79ID:nD+x4iNp トレードオフが理解できないやつは救い用がないな
486デフォルトの名無しさん
2021/10/04(月) 04:31:11.34ID:iJ0WSmh4 >>483
配列にマイナスのインデックスを指定して後ろからアクセスできる言語
Perl, Python, Ruby
できない言語
Ada, BASIC, C, C++, C#, COBOL, D, Java, JavaScript, Julia, Lua, Lisp, Fortran, Go, Haskell, Nim, Objective-C, OCaml, Pascal, PHP, Rust, Scala, Scheme, Swift
配列にマイナスのインデックスを指定して後ろからアクセスできる言語
Perl, Python, Ruby
できない言語
Ada, BASIC, C, C++, C#, COBOL, D, Java, JavaScript, Julia, Lua, Lisp, Fortran, Go, Haskell, Nim, Objective-C, OCaml, Pascal, PHP, Rust, Scala, Scheme, Swift
487デフォルトの名無しさん
2021/10/04(月) 04:35:22.41ID:8MuyuhIX 〇なってしまう
×できる
×できる
488デフォルトの名無しさん
2021/10/04(月) 08:11:58.68ID:X/RNGavO 両方出来るアセンブラ最高かよ
489デフォルトの名無しさん
2021/10/04(月) 08:50:39.68ID:dVk2OB8l >>486
それらPerl, Python, Rubyはダメな仕様のプログラミング言語です
それらPerl, Python, Rubyはダメな仕様のプログラミング言語です
490デフォルトの名無しさん
2021/10/04(月) 10:09:19.82ID:Wm15mMa+ 俺が初心者に勧めるならpythonだな。数時間あれば物体追跡までやれるから面白いと思うよ。
491デフォルトの名無しさん
2021/10/04(月) 10:10:34.49ID:T6a47w3J >>486
その中でカスタムサブスクリプティングをサポートしてる言語は?
その中でカスタムサブスクリプティングをサポートしてる言語は?
492デフォルトの名無しさん
2021/10/04(月) 12:44:01.21ID:Ax0SG/Jv jsダメだったのか
今まで普通に使ってたわ
今まで普通に使ってたわ
493Mb
2021/10/04(月) 14:28:14.39ID:JFT4UYBi494デフォルトの名無しさん
2021/10/04(月) 15:29:01.74ID:n0RTFZDx なにゆーてん
495デフォルトの名無しさん
2021/10/04(月) 15:31:13.07ID:iJ0WSmh4 御指摘が多数あったので書き直しました
配列にマイナスのインデックスを指定すると配列の最後からアクセスできてしまうダメな仕様>>483となっている言語
Perl, Python, Ruby
それ以外の言語
Ada, BASIC, C, C++, C#, COBOL, D, Java, JavaScript, Julia, Lua, Lisp, Fortran, Go, Haskell, Nim, Objective-C, OCaml, Pascal, PHP, Rust, Scala, Scheme, Swift
配列にマイナスのインデックスを指定すると配列の最後からアクセスできてしまうダメな仕様>>483となっている言語
Perl, Python, Ruby
それ以外の言語
Ada, BASIC, C, C++, C#, COBOL, D, Java, JavaScript, Julia, Lua, Lisp, Fortran, Go, Haskell, Nim, Objective-C, OCaml, Pascal, PHP, Rust, Scala, Scheme, Swift
497デフォルトの名無しさん
2021/10/04(月) 16:53:09.02ID:X/RNGavO498デフォルトの名無しさん
2021/10/04(月) 17:38:36.70ID:znSA4x40 配列要素のマイナス指定の仕様の話をしているのになぜデータ型の話になるのか...
499デフォルトの名無しさん
2021/10/04(月) 17:54:02.11ID:CaXP+fHy >>495
いや、何もおかしくなかったよ?
いや、何もおかしくなかったよ?
500デフォルトの名無しさん
2021/10/04(月) 18:28:58.18ID:Rysg4GDr あわしろ氏がお勧めする数学志向言語Haskell。
501デフォルトの名無しさん
2021/10/04(月) 19:05:45.27ID:2YMOh0J/502Mb
2021/10/04(月) 20:35:34.52ID:JFT4UYBi あぁ、まったくものを識らないというのは怖ろしいことだなぁ ……
南無阿弥陀佛南無阿弥陀佛 ――
「ここは配列の一丁目といって、
OPTION BASE 1を宣言しているので、
0丁目やマイナス一丁目の無ぇ処だ」。
アセンブラや C で配列の添字でマイナスの値を指定していて、
さんざん他人の記憶領域を踏みつぶしてトラップを発生させて
きた報いを今こそ受けるがいい。
南無阿弥陀佛南無阿弥陀佛 ――
「ここは配列の一丁目といって、
OPTION BASE 1を宣言しているので、
0丁目やマイナス一丁目の無ぇ処だ」。
アセンブラや C で配列の添字でマイナスの値を指定していて、
さんざん他人の記憶領域を踏みつぶしてトラップを発生させて
きた報いを今こそ受けるがいい。
503デフォルトの名無しさん
2021/10/04(月) 20:54:40.65ID:Oq3tSgoB >>493 のツッコミが良くわからない
504デフォルトの名無しさん
2021/10/04(月) 23:50:14.04ID:iJ0WSmh4 >>502
今回はその話がされているのではないです
例えばPythonではマイナスの添字で配列の後ろから数えた要素になってしまうのです
a = [5, 6, 7, 8, 9]
print(a[-1]) # → 9
print(a[-2]) # → 8
print(a[-5]) # → 5
この添字が算出された変数で与えられた時に
プログラミングのミスでマイナスとなった場合と意図的に後ろから数えたい場合で同じこの結果となって区別できないため
プログラミング言語としてはPythonは悪い仕様だと言われている話です
さらに添字の開始を0ではなく任意の整数にできるプログラミング言語もありますが
このPythonの悪い仕様だと開始をマイナスの整数とした場合に困りますね
今回はその話がされているのではないです
例えばPythonではマイナスの添字で配列の後ろから数えた要素になってしまうのです
a = [5, 6, 7, 8, 9]
print(a[-1]) # → 9
print(a[-2]) # → 8
print(a[-5]) # → 5
この添字が算出された変数で与えられた時に
プログラミングのミスでマイナスとなった場合と意図的に後ろから数えたい場合で同じこの結果となって区別できないため
プログラミング言語としてはPythonは悪い仕様だと言われている話です
さらに添字の開始を0ではなく任意の整数にできるプログラミング言語もありますが
このPythonの悪い仕様だと開始をマイナスの整数とした場合に困りますね
505デフォルトの名無しさん
2021/10/04(月) 23:55:29.95ID:GaPDsv2L 後ろからやりたい時には長さから引くとかやらないで済むんだから
それで書く時には楽な分気をつければ良いだけの話
だいたいPythonなんて軽くサクサク書く時にしか使わないんだから
どこの現場のどういう状況でそれ問題になったの?
それで書く時には楽な分気をつければ良いだけの話
だいたいPythonなんて軽くサクサク書く時にしか使わないんだから
どこの現場のどういう状況でそれ問題になったの?
506デフォルトの名無しさん
2021/10/04(月) 23:58:01.46ID:iJ0WSmh4 >>502
もう一つ
おっしゃってるC言語の場合だと配列もポインタとして扱われますので
意図的に添字をマイナスにして便利に使うことも多いですよ
例えば
int a[5] = {5, 6, 7, 8, 9};
int *p = a + 2;
for (int i = -2; i <= 2; i++) {
printf("p[%d] = %d\n", i, p[i]);
}
これで出力結果は
p[-2] = 5
p[-1] = 6
p[0] = 7
p[1] = 8
p[2] = 9
こうすれば-2から2の範囲で扱うことが出来ます
もう一つ
おっしゃってるC言語の場合だと配列もポインタとして扱われますので
意図的に添字をマイナスにして便利に使うことも多いですよ
例えば
int a[5] = {5, 6, 7, 8, 9};
int *p = a + 2;
for (int i = -2; i <= 2; i++) {
printf("p[%d] = %d\n", i, p[i]);
}
これで出力結果は
p[-2] = 5
p[-1] = 6
p[0] = 7
p[1] = 8
p[2] = 9
こうすれば-2から2の範囲で扱うことが出来ます
507デフォルトの名無しさん
2021/10/04(月) 23:59:44.40ID:iJ0WSmh4 >>505
意図せずに添字の算出結果がマイナスとなった時にエラーとならずに後ろから適用してしまうのはマズイです
意図せずに添字の算出結果がマイナスとなった時にエラーとならずに後ろから適用してしまうのはマズイです
508デフォルトの名無しさん
2021/10/05(火) 00:16:06.30ID:jjv9GGMe509デフォルトの名無しさん
2021/10/05(火) 00:24:42.33ID:jjv9GGMe Pythonは機械学習やった時に半年ほどしか使ってないがマイナスでバグったこと
一回もないしむしろその範囲では書きやすくてよかったよ
JSのダックタイピングとかだって動かすまでエラー出ないけど書きやすいし
Javaみたいにタイプがきっちりしてれば多少面倒くさいけどコンパイルで
エラー出るし読みやすいし大概の事はどっちが正しいじゃなくて状況次第
一回もないしむしろその範囲では書きやすくてよかったよ
JSのダックタイピングとかだって動かすまでエラー出ないけど書きやすいし
Javaみたいにタイプがきっちりしてれば多少面倒くさいけどコンパイルで
エラー出るし読みやすいし大概の事はどっちが正しいじゃなくて状況次第
510デフォルトの名無しさん
2021/10/05(火) 00:43:07.65ID:JDY+450s ほとんど全てのプログラミング言語では、Pythonのような変な仕様になっていない、これが答えだ。
プログラムの安全性の視点では、プログラミングの間違いでインデックス変数が負の数となった時に、Pythonのような変な仕様ではエラーとならずに間違った要素を指して通ってしまう。
プログラミング言語の拡張性の視点では、インデックスに負の数を用いることができるようにすると、この変な仕様とぶつかってしまう。
これらの理由から、ほとんど全てのプログラミング言語では、Pythonのような変な仕様を採用していない。
プログラムの安全性の視点では、プログラミングの間違いでインデックス変数が負の数となった時に、Pythonのような変な仕様ではエラーとならずに間違った要素を指して通ってしまう。
プログラミング言語の拡張性の視点では、インデックスに負の数を用いることができるようにすると、この変な仕様とぶつかってしまう。
これらの理由から、ほとんど全てのプログラミング言語では、Pythonのような変な仕様を採用していない。
511デフォルトの名無しさん
2021/10/05(火) 00:51:05.89ID:J1XVpNN0512デフォルトの名無しさん
2021/10/05(火) 01:02:54.22ID:jjv9GGMe513デフォルトの名無しさん
2021/10/05(火) 01:05:51.37ID:2oqKIsmm514デフォルトの名無しさん
2021/10/05(火) 01:11:22.25ID:jjv9GGMe 後ろから取る作業が多くなると毎回いちいち長さから引いてとか
誰でも面倒くさくなるからね
他は知らんけど機械学習でデータの切り張りばっかりみたいな時には
便利だったし他にも便利な状況はいくらもあると思うよ
誰でも面倒くさくなるからね
他は知らんけど機械学習でデータの切り張りばっかりみたいな時には
便利だったし他にも便利な状況はいくらもあると思うよ
515デフォルトの名無しさん
2021/10/05(火) 01:18:23.61ID:JDY+450s なぜ、ほとんどのプログラミング言語では、Pythonのような変な仕様を採用していないのか?
有用ではなく、有害であるためだ。
有用ではなく、有害であるためだ。
516デフォルトの名無しさん
2021/10/05(火) 01:20:01.60ID:jjv9GGMe その根拠は?
517デフォルトの名無しさん
2021/10/05(火) 01:23:34.70ID:O4xoYpnl インデクスの値を即値で-1のように書かずに計算して求める場合、符号などの妥当性ののチェックはやるんじゃないかな
518デフォルトの名無しさん
2021/10/05(火) 01:26:01.78ID:jjv9GGMe そうだわな
そもそもマイナスにしたくないならマイナスのチェック入れれば良いだけで
マイナスのチェック入れるのが面倒くさいのか、長さから引くのが面倒くさいのか
長さから引く事が多ければマイナスで後ろからのが楽だし逆なら逆だし
Javaでマイナスで後ろから取りたいなって思った事はそんなにないし
状況次第
そもそもマイナスにしたくないならマイナスのチェック入れれば良いだけで
マイナスのチェック入れるのが面倒くさいのか、長さから引くのが面倒くさいのか
長さから引く事が多ければマイナスで後ろからのが楽だし逆なら逆だし
Javaでマイナスで後ろから取りたいなって思った事はそんなにないし
状況次第
519デフォルトの名無しさん
2021/10/05(火) 01:29:51.70ID:JDY+450s >>516
インデックスの開始値をプログラマーが指定できるプログラミング言語では、もちろん負の数のインデックスも扱えるが、Pythonのような変な仕様では有害となる。
それ以外のプログラミング言語においても、インデックスの計算ミスで範囲外となった時にエラーとなってくれる言語が多くを占めるが、Pythonのような変な仕様ではエラーとなってくれず有害である。
インデックスの開始値をプログラマーが指定できるプログラミング言語では、もちろん負の数のインデックスも扱えるが、Pythonのような変な仕様では有害となる。
それ以外のプログラミング言語においても、インデックスの計算ミスで範囲外となった時にエラーとなってくれる言語が多くを占めるが、Pythonのような変な仕様ではエラーとなってくれず有害である。
520デフォルトの名無しさん
2021/10/05(火) 01:33:57.18ID:jjv9GGMe >>519
だから「有害」の根拠は?
エラーが出ても変な値が出てもバグはバグだしチェック入れれば済む話だし
どういう仕事でどういう状況で問題になったのかとかガン無視だし
もう君の中では有害なんだろうね、って言うしか
だから「有害」の根拠は?
エラーが出ても変な値が出てもバグはバグだしチェック入れれば済む話だし
どういう仕事でどういう状況で問題になったのかとかガン無視だし
もう君の中では有害なんだろうね、って言うしか
521デフォルトの名無しさん
2021/10/05(火) 01:48:30.74ID:JDY+450s >>520
例えばPHPでは、配列のインデックスの開始値が負の数でも扱えるように拡張された。
もちろん、拡張なく最初から、開始値が負の数でも正の数でもプログラマーが指定できるプログラミング言語も多い。
Pythonのような変な仕様では、仕様がぶつかってしまい有害である。
例えばPHPでは、配列のインデックスの開始値が負の数でも扱えるように拡張された。
もちろん、拡張なく最初から、開始値が負の数でも正の数でもプログラマーが指定できるプログラミング言語も多い。
Pythonのような変な仕様では、仕様がぶつかってしまい有害である。
522デフォルトの名無しさん
2021/10/05(火) 01:50:26.30ID:iMZ32mmH >>506
配列の添字をマイナスにすることは、C言語では規格上認められていないんじゃなかったっけ? 配列の添字として取りうる範囲は、全ての要素および最終要素の次に対応する添字だけだったような気がするけど。
506の例は、単なるポインタを使った演算に過ぎず、配列とは無関係でしょ。配列の要素参照がポインタ演算としてなされるからといって、配列とポインタが同じものになるわけではないよ。混同してない?
配列の添字をマイナスにすることは、C言語では規格上認められていないんじゃなかったっけ? 配列の添字として取りうる範囲は、全ての要素および最終要素の次に対応する添字だけだったような気がするけど。
506の例は、単なるポインタを使った演算に過ぎず、配列とは無関係でしょ。配列の要素参照がポインタ演算としてなされるからといって、配列とポインタが同じものになるわけではないよ。混同してない?
523デフォルトの名無しさん
2021/10/05(火) 02:24:56.27ID:jjv9GGMe >>521
個人的にはむしろインデックスの開始が負であってほしいことなんて無いけれども
まあ別にあっても良いけど負であってほしいなら負でできる言語を使えば良いし
後ろから取れる方が便利ならそっち使えば良いし
具体的にどの仕事でどんなコード書いた時にインデックスの開始が負である事が
そこまで重要で「害」というほどの問題が出たの?
非常に些細な問題に思えるが
思い込みの強いスペクトラムの人がプログラマ向いてるみたいな事いう人
いるけど全然向いてないんだよね
数学とかのが良いのでは?
個人的にはむしろインデックスの開始が負であってほしいことなんて無いけれども
まあ別にあっても良いけど負であってほしいなら負でできる言語を使えば良いし
後ろから取れる方が便利ならそっち使えば良いし
具体的にどの仕事でどんなコード書いた時にインデックスの開始が負である事が
そこまで重要で「害」というほどの問題が出たの?
非常に些細な問題に思えるが
思い込みの強いスペクトラムの人がプログラマ向いてるみたいな事いう人
いるけど全然向いてないんだよね
数学とかのが良いのでは?
524デフォルトの名無しさん
2021/10/05(火) 06:23:56.53ID:2oqKIsmm そうね
パッとどんなシチュエーションで使えばインデックスがマイナスのとき有用性があるのか思いつかないけど、
スタックエリアも溜め込むときPushを使うとスタックポインタが指すアドレスはマイナスされるとかあるから、どっかで使い道はあるかもね。
弊害としてはちょっと違うかも知れないけど、スーパーマリオで残機増やして128機以上にすると、死ぬとゲームオーバーになる、というのと似ているのかな。
まぁあれの場合は1バイトでも削って作ろうとしていたみたいだから判ってたけど敢えてチェックは入れなかったのかも知れないけど。
機能を理解した上であれば別にそういうもんなんだろう、で片付く話のような気がするよ。
パッとどんなシチュエーションで使えばインデックスがマイナスのとき有用性があるのか思いつかないけど、
スタックエリアも溜め込むときPushを使うとスタックポインタが指すアドレスはマイナスされるとかあるから、どっかで使い道はあるかもね。
弊害としてはちょっと違うかも知れないけど、スーパーマリオで残機増やして128機以上にすると、死ぬとゲームオーバーになる、というのと似ているのかな。
まぁあれの場合は1バイトでも削って作ろうとしていたみたいだから判ってたけど敢えてチェックは入れなかったのかも知れないけど。
機能を理解した上であれば別にそういうもんなんだろう、で片付く話のような気がするよ。
525デフォルトの名無しさん
2021/10/05(火) 07:46:23.69ID:J9uTiL9m >>509
> Pythonは機械学習やった時に半年ほどしか使ってないがマイナスでバグったこと
> 一回もないしむしろその範囲では書きやすくてよかったよ
それな
これが実際書いてるやつの率直な感想だと思うわ
いろんな言語を切り替えて使ってる奴にとって
使ってる言語の仕様に合せてプログラミングするというのは
なんの恐れることもない当たり前の空気のようなこと
極端に経験が少ないか柔軟性が無い奴は怖いだろうけど
> Pythonは機械学習やった時に半年ほどしか使ってないがマイナスでバグったこと
> 一回もないしむしろその範囲では書きやすくてよかったよ
それな
これが実際書いてるやつの率直な感想だと思うわ
いろんな言語を切り替えて使ってる奴にとって
使ってる言語の仕様に合せてプログラミングするというのは
なんの恐れることもない当たり前の空気のようなこと
極端に経験が少ないか柔軟性が無い奴は怖いだろうけど
526デフォルトの名無しさん
2021/10/05(火) 07:48:58.06ID:r5SNpXIN >>510
なんで必要かどうかもわからない拡張性で今ここでいい悪いを論じるのかわからんが、
配列参照演算をオーバーライドできるなら問題ないがな。
逆にあんたの論理だと、配列参照演算をオーバーライドできない言語は拡張性の視点で
全部ダメってことにならないかな。
なんで必要かどうかもわからない拡張性で今ここでいい悪いを論じるのかわからんが、
配列参照演算をオーバーライドできるなら問題ないがな。
逆にあんたの論理だと、配列参照演算をオーバーライドできない言語は拡張性の視点で
全部ダメってことにならないかな。
527デフォルトの名無しさん
2021/10/05(火) 09:31:11.02ID:uYCoijY3 だから何に話をしてるんだっていってんだろ
528デフォルトの名無しさん
2021/10/05(火) 09:56:05.72ID:LkgJCUEu 何にって猫かな?
529デフォルトの名無しさん
2021/10/05(火) 10:34:48.12ID:Fyf6Owff プログラミング言語より猫語の方が役に立ちそう。
530デフォルトの名無しさん
2021/10/05(火) 10:52:37.79ID:MXyUAm/U そもそもマイナス指定っ要するにarr.length-nでlengthを省略できるようにしたいってだけだろ
そこまで省略したいかね?って思うけどね
なんつーかここら辺はTDDとセットでやるから許される言語仕様であって、TDDしてないのにこの言語仕様を肯定するのはバグがあった場合の事想定してなさすぎる
そこまで省略したいかね?って思うけどね
なんつーかここら辺はTDDとセットでやるから許される言語仕様であって、TDDしてないのにこの言語仕様を肯定するのはバグがあった場合の事想定してなさすぎる
531デフォルトの名無しさん
2021/10/05(火) 11:14:47.30ID:J9uTiL9m > 要するにarr.length-nでlengthを省略できるようにしたいってだけだろ
しつけーわ
なんでお前意外とっくに全員わかってることを
いまさら大発見みたいに書き込むんだガイジ
頭悪すぎん?
しつけーわ
なんでお前意外とっくに全員わかってることを
いまさら大発見みたいに書き込むんだガイジ
頭悪すぎん?
532デフォルトの名無しさん
2021/10/05(火) 11:27:15.20ID:uYCoijY3 みんなカルシウム摂ろうぜ
533デフォルトの名無しさん
2021/10/05(火) 11:48:17.87ID:MXyUAm/U え、別人なんだけどこの人怖い
534デフォルトの名無しさん
2021/10/05(火) 13:05:57.99ID:nhjUOKYi length-nを省略すると良いことと悪いことがあって、
言語的に優先することが違うから、採用したりしなかったりするのかもね。
省略したら、ぱっと見判りにくくなるけど、
Pythonみたいなインタプリタは入力減らすほうが優先、とか。
言語的に優先することが違うから、採用したりしなかったりするのかもね。
省略したら、ぱっと見判りにくくなるけど、
Pythonみたいなインタプリタは入力減らすほうが優先、とか。
535デフォルトの名無しさん
2021/10/05(火) 13:23:56.58ID:HrDzy9dq 皆が述べてるように悪い点は3つなのかな
・わざわざ省略するわかりにくさ
・バグでマイナス値になった時と区別がつかない
・インデックス範囲を自由に指定できる仕様とバッティング
だから多くの言語では採用していないのもわかる
結果としてPythonやPerlなど異端な言語のみが採用って感じ?
・わざわざ省略するわかりにくさ
・バグでマイナス値になった時と区別がつかない
・インデックス範囲を自由に指定できる仕様とバッティング
だから多くの言語では採用していないのもわかる
結果としてPythonやPerlなど異端な言語のみが採用って感じ?
536Mb
2021/10/05(火) 13:39:32.69ID:NR1fOsV4 サイズが n だと添字(そえじ)は 0 から n-1。
そんなわけで、添字で指定すると、要素は mod n。
数学的にはなんの問題もないのだが、実務に携わっている
システム屋としては、「範囲外参照なんだから例外くらい
投げろよ」と思う。
「だって、仕様書通りに実装したんだもーん」みたいな
アホがいた時代があった、という話だろうな。
そんなわけで、添字で指定すると、要素は mod n。
数学的にはなんの問題もないのだが、実務に携わっている
システム屋としては、「範囲外参照なんだから例外くらい
投げろよ」と思う。
「だって、仕様書通りに実装したんだもーん」みたいな
アホがいた時代があった、という話だろうな。
537デフォルトの名無しさん
2021/10/05(火) 13:50:38.64ID:2oqKIsmm ぶっちゃけ「始めるのにいい言語」というスレタイからするとその辺はどうでもいい範疇だと思うけどね
538Mb
2021/10/05(火) 13:53:59.41ID:NR1fOsV4 >>522
C はそもそもシステム開発用の言語なので、
そういうことができないとダメなんだわ。
「右の値と左の値」というのがあって、
代入記号というのは「向かって左のアドレスに、
向かって右の値を転写する」というのが基本だった。
「バイト数が合ってたらなんでもあり」でないと、
システムプログラム(OS)は作りづらい。
そこは、アプリケーションプログラムの開発と
システムプログラムの開発では、違う部分があると思う。
C はそもそもシステム開発用の言語なので、
そういうことができないとダメなんだわ。
「右の値と左の値」というのがあって、
代入記号というのは「向かって左のアドレスに、
向かって右の値を転写する」というのが基本だった。
「バイト数が合ってたらなんでもあり」でないと、
システムプログラム(OS)は作りづらい。
そこは、アプリケーションプログラムの開発と
システムプログラムの開発では、違う部分があると思う。
539デフォルトの名無しさん
2021/10/05(火) 14:06:54.91ID:HrDzy9dq540Mb
2021/10/05(火) 14:08:24.92ID:NR1fOsV4 >>523
自閉系スペクトラム障礙の私が敢えていいますよ。
C のルーチンで、バイト列の値を返すときに、可変長だったら
こっちでバッファを用意するでしょう?(もちろん、
alloc した領域の中で処理して、free する前に確保した領域ですが)
そこを上位にルーチンが掻き潰すと、「うちの領域で起きた不具合」に
なってしまうんですよ! 「このクソ忙しいときに、上位会社のケツとか
拭いているヒマはねぇんだよ!」と思うんですが、とにかくシステムが
動かなかったらテストもできない。そんなわけで、障害切り分けをして
レポートを上げたら、「次からは気をつけてね」とか。
襁褓も取れていない小便臭い(プログラミングの何かも知らない)
ひいひいたもれのガキのお守りは、たぶん SE の仕事ではないと思う。
自閉系スペクトラム障礙の私が敢えていいますよ。
C のルーチンで、バイト列の値を返すときに、可変長だったら
こっちでバッファを用意するでしょう?(もちろん、
alloc した領域の中で処理して、free する前に確保した領域ですが)
そこを上位にルーチンが掻き潰すと、「うちの領域で起きた不具合」に
なってしまうんですよ! 「このクソ忙しいときに、上位会社のケツとか
拭いているヒマはねぇんだよ!」と思うんですが、とにかくシステムが
動かなかったらテストもできない。そんなわけで、障害切り分けをして
レポートを上げたら、「次からは気をつけてね」とか。
襁褓も取れていない小便臭い(プログラミングの何かも知らない)
ひいひいたもれのガキのお守りは、たぶん SE の仕事ではないと思う。
541Mb
2021/10/05(火) 14:16:15.90ID:NR1fOsV4 >>539
おぉ、解っていらっしゃる。
C の配列はポインタと同一視されるので、
++ は「ポインタに対して、sizeof 分だけ
インクリメントする」という意味ではあるし、
sp++ とか --spとかいうのも、スタック操作と
いうものを考えると自然な操作だ。
おぉ、解っていらっしゃる。
C の配列はポインタと同一視されるので、
++ は「ポインタに対して、sizeof 分だけ
インクリメントする」という意味ではあるし、
sp++ とか --spとかいうのも、スタック操作と
いうものを考えると自然な操作だ。
542デフォルトの名無しさん
2021/10/05(火) 14:23:26.23ID:HrDzy9dq >>540
Cだと確保した領域を「渡してしまう」のかそれとも「一時的に貸すだけ」なのかの区別がないためどちらがその領域の最終責任を持つのか曖昧になってしまうね
Rustだとそこがはっきりしてるため解放忘れも二重解放も起きないし言語側が全て自動でやってくれるから楽で安全安心
Cだと確保した領域を「渡してしまう」のかそれとも「一時的に貸すだけ」なのかの区別がないためどちらがその領域の最終責任を持つのか曖昧になってしまうね
Rustだとそこがはっきりしてるため解放忘れも二重解放も起きないし言語側が全て自動でやってくれるから楽で安全安心
543デフォルトの名無しさん
2021/10/05(火) 14:30:18.69ID:2oqKIsmm ちなみにC#になるとポインタの概念が消えて
もっとセーフティーなDeregateになったよね。
それを良しと捉えるか悪化と捉えるかは
個人で意見の別かれるところだと思うけど。
もっとセーフティーなDeregateになったよね。
それを良しと捉えるか悪化と捉えるかは
個人で意見の別かれるところだと思うけど。
544デフォルトの名無しさん
2021/10/05(火) 14:34:39.20ID:2oqKIsmm deregateって何だよ
delegateの間違いだわ
スマソ
delegateの間違いだわ
スマソ
545デフォルトの名無しさん
2021/10/05(火) 14:40:48.11ID:HrDzy9dq546デフォルトの名無しさん
2021/10/05(火) 14:46:58.82ID:MXyUAm/U ガベコレがある言語かない言語かでどうしても考え方が分かれるから、始めるのにいい言語はどっちなのか先に決めてもいいんじゃなかろうか?
547デフォルトの名無しさん
2021/10/05(火) 15:49:14.07ID:HrDzy9dq >>546
昔は「GCがない」=「自分でメモリ管理しなきゃいけない」=「ミスると致命的」だったからその区別をする意義が理解できたけど
今は状況が一変してしまいました
【第1期】CとC++(初期)
自分で手動でメモリ解放しなければならなかった
【第2期】C++(現在)
各種スマートポインタ使用によりメモリ解放は自動で行われるようになった
しかしプログラムが込み入ってくると適切なスマートポインタ使用を完全にコントロールできなくなってるケースも多々ありそれが問題
つまり書かれたプログラムにメモリ安全性の保証が必ずしもないことが課題
【第3期】Rust
所有貸し借りをC++よりさらにはっきりさせることでコンパイルが通ったプログラムはメモリ安全性を保証することに成功
もちろんメモリ解放は言語レベルで自動に即座に行われるのでGCなし
しかもGCありの言語と同等もしくはそれ以上にメモリ安全性を保証
つまり以前は『GCなし言語は高速だけど自己責任管理ミス防止が大変』だったのが
今は『GCなし言語で高速なのに言語レベルで管理ミスを確実に防止してくれる』となった
初心者でもGCなしの高速なプログラミングを安全に出来るようになったわけです
昔は「GCがない」=「自分でメモリ管理しなきゃいけない」=「ミスると致命的」だったからその区別をする意義が理解できたけど
今は状況が一変してしまいました
【第1期】CとC++(初期)
自分で手動でメモリ解放しなければならなかった
【第2期】C++(現在)
各種スマートポインタ使用によりメモリ解放は自動で行われるようになった
しかしプログラムが込み入ってくると適切なスマートポインタ使用を完全にコントロールできなくなってるケースも多々ありそれが問題
つまり書かれたプログラムにメモリ安全性の保証が必ずしもないことが課題
【第3期】Rust
所有貸し借りをC++よりさらにはっきりさせることでコンパイルが通ったプログラムはメモリ安全性を保証することに成功
もちろんメモリ解放は言語レベルで自動に即座に行われるのでGCなし
しかもGCありの言語と同等もしくはそれ以上にメモリ安全性を保証
つまり以前は『GCなし言語は高速だけど自己責任管理ミス防止が大変』だったのが
今は『GCなし言語で高速なのに言語レベルで管理ミスを確実に防止してくれる』となった
初心者でもGCなしの高速なプログラミングを安全に出来るようになったわけです
548デフォルトの名無しさん
2021/10/05(火) 16:05:08.71ID:s2K7JbUj >>538-539
規格上は未定義の動作でしょ。
JIS X 3010の6.5.2.1とか6.5.6とかを見てみたら。
[]がポインタ演算として処理されるからといって、配列とポインタを同一視できるわけではない。
実際上は538-539の期待どおりに動作する処理系がほとんどだから、厳密には未定義であることを承知の上で利用することは否定しないが、言語仕様の話をしているときに、それがC言語の本来的な仕様であるかのように語るのは違和感がある。
規格上は未定義の動作でしょ。
JIS X 3010の6.5.2.1とか6.5.6とかを見てみたら。
[]がポインタ演算として処理されるからといって、配列とポインタを同一視できるわけではない。
実際上は538-539の期待どおりに動作する処理系がほとんどだから、厳密には未定義であることを承知の上で利用することは否定しないが、言語仕様の話をしているときに、それがC言語の本来的な仕様であるかのように語るのは違和感がある。
549Mb
2021/10/05(火) 16:16:25.50ID:NR1fOsV4 >>547
正確にいうと、古い世代の言語は GC を明示的に行なっていたけれど、
現代の言語は、そこの部分をうまく隠蔽していて、それを標準として
いるということではないかな?
文字列オブジェクトの A.equals(B)は、LISP の頃は当然だったけれど、
「値が一緒だったら、一緒にしないとまずくねぇ?」という話になって
A.eq(B)みたいな話には、少なくとも Java ではあったりする。
String オブジェクトを「==」で処理するのは行儀が悪いが、
シングルトン実装を踏まえて ちゃんと作法を守って使うのなら、
それはそれで認める。
つーか、これって「ぶっちゃけ始めるににいい言語て何」という
スレタイに合ってねぇだろ。ここは老人の寄合所なのか?
正確にいうと、古い世代の言語は GC を明示的に行なっていたけれど、
現代の言語は、そこの部分をうまく隠蔽していて、それを標準として
いるということではないかな?
文字列オブジェクトの A.equals(B)は、LISP の頃は当然だったけれど、
「値が一緒だったら、一緒にしないとまずくねぇ?」という話になって
A.eq(B)みたいな話には、少なくとも Java ではあったりする。
String オブジェクトを「==」で処理するのは行儀が悪いが、
シングルトン実装を踏まえて ちゃんと作法を守って使うのなら、
それはそれで認める。
つーか、これって「ぶっちゃけ始めるににいい言語て何」という
スレタイに合ってねぇだろ。ここは老人の寄合所なのか?
550Mb
2021/10/05(火) 16:23:52.58ID:NR1fOsV4 >>589
それを言ったら FORTRAN の FOR ループから脱出したときの、
FOR 文の局所変数の値は、規格の上では「不定」だったんだよ!
ANSI 規格の C 言語に文句があるわけじゃない。
行儀よく振舞えって言っているのだ。
それを言ったら FORTRAN の FOR ループから脱出したときの、
FOR 文の局所変数の値は、規格の上では「不定」だったんだよ!
ANSI 規格の C 言語に文句があるわけじゃない。
行儀よく振舞えって言っているのだ。
551デフォルトの名無しさん
2021/10/05(火) 16:30:23.62ID:cUFArVWj CやってJavaだな
その後は流行りのPythonでも、苦行なC++でも好きなのをやれば良い
その後は流行りのPythonでも、苦行なC++でも好きなのをやれば良い
552デフォルトの名無しさん
2021/10/05(火) 16:52:02.45ID:2oqKIsmm Excel VBA(ついでにSQL、ストアド覚えられるとなお良) → VB.Net → C# → ASP.Net(ついでにhtml、CSS、Javascript、JQuery)でいいんじゃないかと。
後は趣味で頭の体操的にアセンブラで。
後は趣味で頭の体操的にアセンブラで。
553デフォルトの名無しさん
2021/10/05(火) 17:03:08.93ID:MXyUAm/U msにどっぷり過ぎワロタ
554Mb
2021/10/05(火) 17:27:23.90ID:NR1fOsV4555デフォルトの名無しさん
2021/10/05(火) 18:35:05.62ID:Sa3guHHs >>551
それでFAだな
それでFAだな
556デフォルトの名無しさん
2021/10/05(火) 20:21:33.51ID:cut86n1U お前らって、
while(true){}
だな
while(true){}
だな
557デフォルトの名無しさん
2021/10/05(火) 20:33:30.49ID:tPNu+94A おうっ
しかも break しねえぜw
しかも break しねえぜw
558デフォルトの名無しさん
2021/10/05(火) 20:38:48.73ID:5baRS80P >>556
'while' statement cannot complete without throwing an excretion.
'while' statement has empty body.
'while' statement cannot complete without throwing an excretion.
'while' statement has empty body.
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】中国外務省報道官 高市首相発言撤回なければ「断固たる対抗措置」 [蚤の市★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… [BFU★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★2 [BFU★]
- 【速報】中国、水産物輸入停止と通達 「処理水」理由、日本政府へ ★7 [おっさん友の会★]
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★3 [ぐれ★]
- 【速報】中国、水産物輸入停止と通達 「処理水」理由、日本政府へ ★8 [おっさん友の会★]
- 高市早苗「つい言い過ぎた」公邸で一人ひきこもる😲 [861717324]
- お笑い芸人「発言の意図を国民に説明した方がいいのでは?」この程度の発言で袋叩きに遭う [931948549]
- 【高市有事】牛肉の対中輸出再開協議が中止wwwwwwwwwwwwwwww [834922174]
- 【👊専】ロケット🚀👊😅👊🚀パーンチww🏡
- 【悲報】ネトウヨ「今回の株価暴落は立憲岡田ショック!!!高市を追い詰めた岡田のせい」 [731544683]
- 日本人、ついに気づく「あれ、日本が対中国で取れる対抗措置ってなくない…?」 [931948549]
