Goについて扱うスレッドです。
GoはGoogleによって開発された言語です。
公式
https://golang.org
公式ドキュメント
https://golang.org/doc/
公式外パッケージドキュメント
https://godoc.org
ブラウザ上で試し書き
https://play.golang.org
※前スレ
Go language part 4
https://mevius.5ch.net/test/read.cgi/tech/1605467680/
探検
Go language part 5
■ このスレッドは過去ログ倉庫に格納されています
2022/02/27(日) 07:43:20.04ID:uWHjNeVw
321デフォルトの名無しさん
2022/05/11(水) 12:20:04.50ID:PHtWPQ6d yoshikiはもうx japanのアルバムは出せないみたいな事言っちゃったしな
322デフォルトの名無しさん
2022/05/11(水) 17:22:36.20ID:RR+m2Q5s 20年後もメンテナンスし続けられる業務用言語
323デフォルトの名無しさん
2022/05/11(水) 19:40:14.48ID:MNr0qB9P324デフォルトの名無しさん
2022/05/13(金) 07:55:24.36ID:Wz0AIi2I ちんちんシュッ!シュッ!シュッ!
325デフォルトの名無しさん
2022/05/13(金) 07:57:59.19ID:ChGB8Ii1 もうGoは終わりだな
俺はこれからPHP使いになる。じゃあな
俺はこれからPHP使いになる。じゃあな
326デフォルトの名無しさん
2022/05/14(土) 10:01:06.26ID:Up3XZ1NA 俺はGo使いからC使いになるよ
結局全てのことはCで出来るんだし、森羅万象の神になるためにもCを極めるよ
結局全てのことはCで出来るんだし、森羅万象の神になるためにもCを極めるよ
327デフォルトの名無しさん
2022/05/14(土) 10:49:33.99ID:UjtsEluP 俺は魔法使いから妖精になるよ
328デフォルトの名無しさん
2022/05/14(土) 12:19:38.49ID:Nj4b7tCX _ ー――--_ ._
<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r ´;;;;;;; ̄Y
/ ̄/\ヽ;;;;/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Y;;;;;;;;;;;;;;;;|
Y / \.\ \;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Y;;;;;;;;;;;ノ
t――/ ;○;\ \/|;;;;;;;;;;;;;;;;;;;;;;|―イ
/ { "' ' \\ .|;;;;;;;;;;;;;;;;;;;;;;|
/ { . ;○;\\ヽ;;;;;;;;;;;;;;;;イ
Y Y , , , , ヽ;;;;;;;;;;;;;ハ
/ \ ェ‐-ュ レ-‐-イ ヽ
// Y .`´ __ Y Y
/  ̄| レ―― ̄ ̄入_ _ノ |
/ <  ̄|  ̄ ̄ | .ノ
/ | メ
/ < .|イ
/ |
/ < __|
_ / _― ̄
_-ー ̄ \ -―ナ √
V \/ / /
/V く /
./ V \ /
V \ /
<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r ´;;;;;;; ̄Y
/ ̄/\ヽ;;;;/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Y;;;;;;;;;;;;;;;;|
Y / \.\ \;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Y;;;;;;;;;;;ノ
t――/ ;○;\ \/|;;;;;;;;;;;;;;;;;;;;;;|―イ
/ { "' ' \\ .|;;;;;;;;;;;;;;;;;;;;;;|
/ { . ;○;\\ヽ;;;;;;;;;;;;;;;;イ
Y Y , , , , ヽ;;;;;;;;;;;;;ハ
/ \ ェ‐-ュ レ-‐-イ ヽ
// Y .`´ __ Y Y
/  ̄| レ―― ̄ ̄入_ _ノ |
/ <  ̄|  ̄ ̄ | .ノ
/ | メ
/ < .|イ
/ |
/ < __|
_ / _― ̄
_-ー ̄ \ -―ナ √
V \/ / /
/V く /
./ V \ /
V \ /
329デフォルトの名無しさん
2022/05/14(土) 14:13:32.43ID:97r1y8hR /⌒ヽ
{:: :{
_\{‐…‐-.. .,_
、丶`:: :: :: :: :: :: :: :: :`: 、
/:: :: :: /:: :: :: :: :: :: :: :: :: ::\
/:: :: :: :: √ :{:: :: :: :: :: :: ::V/:: ::ヽ
/:: :: :: :: ::.{:: : {:: :: ::{:: :: :: :: :V/:: ::‘,
_.厶 --― ¬:゚, :: :: V/:: }:: : }、\:: }
Ξ, , , , /////, , }!:{ ―- V/ }:: : }::\\
Ξ/////////// }!::〉 ,xぃ、V:}:: : } :: :ハ;_:〉
Ξ//ⅣムV/Ⅳ// }!´ ′ん心,}:: :,゙、 ::{
Ξ /{  ̄  ̄ Ⅵ/ }! 乂ソノ::./ ノ:: {
Ξ/「 0 < }/ }! :.:./::_/ィ:: ::!
-‐㍉ }/.}! _、-''⌒`ヽ、{ :: ‘,:\
/ ’, \ / }'/ \ :‘,ー-
′ -‘, __{ ‘, ::`:: ┐
,′ ./ }___〈 ‘, ‘,` ー┘
,′ { ./ ハ ‘, ノ ‘, 〔_
{ { { / / 〔 ̄(‘, 丶 _∠ __ ′ 〔_
{ 丶 ー 1 ./ / / }'T !ー^'ー'"{ ', 〔_
/ ` ‐ }/ / / / |} . { { ‘,⌒i
{:: :{
_\{‐…‐-.. .,_
、丶`:: :: :: :: :: :: :: :: :`: 、
/:: :: :: /:: :: :: :: :: :: :: :: :: ::\
/:: :: :: :: √ :{:: :: :: :: :: :: ::V/:: ::ヽ
/:: :: :: :: ::.{:: : {:: :: ::{:: :: :: :: :V/:: ::‘,
_.厶 --― ¬:゚, :: :: V/:: }:: : }、\:: }
Ξ, , , , /////, , }!:{ ―- V/ }:: : }::\\
Ξ/////////// }!::〉 ,xぃ、V:}:: : } :: :ハ;_:〉
Ξ//ⅣムV/Ⅳ// }!´ ′ん心,}:: :,゙、 ::{
Ξ /{  ̄  ̄ Ⅵ/ }! 乂ソノ::./ ノ:: {
Ξ/「 0 < }/ }! :.:./::_/ィ:: ::!
-‐㍉ }/.}! _、-''⌒`ヽ、{ :: ‘,:\
/ ’, \ / }'/ \ :‘,ー-
′ -‘, __{ ‘, ::`:: ┐
,′ ./ }___〈 ‘, ‘,` ー┘
,′ { ./ ハ ‘, ノ ‘, 〔_
{ { { / / 〔 ̄(‘, 丶 _∠ __ ′ 〔_
{ 丶 ー 1 ./ / / }'T !ー^'ー'"{ ', 〔_
/ ` ‐ }/ / / / |} . { { ‘,⌒i
330デフォルトの名無しさん
2022/05/14(土) 17:49:19.77ID:CDz+vuVC GopherくんがキモすぎたからGo言語廃れちゃった……
331デフォルトの名無しさん
2022/05/14(土) 18:21:37.53ID:RPnYOvNJ キモナイ
332デフォルトの名無しさん
2022/05/14(土) 20:29:18.94ID:htcmp6+i ごふぁーは見ててイライラするよね
333デフォルトの名無しさん
2022/05/14(土) 21:32:37.80ID:CDz+vuVC GopherくんのAAください
334デフォルトの名無しさん
2022/05/15(日) 05:14:48.52ID:0uh5p1OH ʕ◔ϖ◔ʔ
335デフォルトの名無しさん
2022/05/15(日) 15:32:41.40ID:tfU5J4ah >>334
www
www
336デフォルトの名無しさん
2022/05/15(日) 18:08:41.50ID:t8huU0D2 >>334
これだわw
これだわw
337デフォルトの名無しさん
2022/05/15(日) 18:19:52.67ID:hvviJfuV >>334
完璧やんけ
完璧やんけ
338デフォルトの名無しさん
2022/05/15(日) 22:07:53.72ID:/wKxlXf8 >>334
天才かよ
天才かよ
339デフォルトの名無しさん
2022/05/15(日) 22:33:07.76ID:XVIQic88 見たことあるなと思って検索してみたら2012/06か
340デフォルトの名無しさん
2022/05/15(日) 23:04:07.66ID:13rYFiCc (o゚Д゚)=◯)`3゜)∵
これと組み合わせられないかと思ったけど難しいな
これと組み合わせられないかと思ったけど難しいな
341デフォルトの名無しさん
2022/05/16(月) 01:46:22.06ID:d0iqnG7G ていうかさ
仮にゴーがこのまま静かにフェイドアウトして廃れてしまったらきっと
「やはりマスコットがキモすぎたのが敗因か」とか言われるに決まってるが、逆に
何かの手違いでうっかりプログラミング言語の王者となった場合にもやっぱり
「マスコットがキモすぎたのにもかかわらず、これだけの人気を獲得したGoとは!?」とか言われちゃうんだろう
どっちにしてもキモいとしか思われないゴーファー君かわいそう
仮にゴーがこのまま静かにフェイドアウトして廃れてしまったらきっと
「やはりマスコットがキモすぎたのが敗因か」とか言われるに決まってるが、逆に
何かの手違いでうっかりプログラミング言語の王者となった場合にもやっぱり
「マスコットがキモすぎたのにもかかわらず、これだけの人気を獲得したGoとは!?」とか言われちゃうんだろう
どっちにしてもキモいとしか思われないゴーファー君かわいそう
342デフォルトの名無しさん
2022/05/16(月) 05:55:28.93ID:x9xW3Kri 10年ぐらい前なら美少女化とかしてイラスト描いてる人いそう
343デフォルトの名無しさん
2022/05/16(月) 12:50:00.39ID:4NIJMXSL (´・ω・`)はこBOON最強伝説
344デフォルトの名無しさん
2022/05/16(月) 20:21:36.29ID:VWkobluj ʕ◔ϖ◔ʔ
これ商標登録していいですか?
これ商標登録していいですか?
345デフォルトの名無しさん
2022/05/16(月) 22:39:51.10ID:+h1PRcU6 D言語のマスコット凄くかわいかった
何で流行らないんだろう
何で流行らないんだろう
346デフォルトの名無しさん
2022/05/16(月) 22:54:07.95ID:0w7ItVYY マスコットはネタになるくらいだしまあどうでもええけどな
LinuxのTuxやJavaのDukeはそこそこかわいいけど、Hadoopはヤバキモいゾウにも関わらずかなり使われてるし
とはいえやっぱLispエイリアンくらいにキモかったりする許せないな・・・
LinuxのTuxやJavaのDukeはそこそこかわいいけど、Hadoopはヤバキモいゾウにも関わらずかなり使われてるし
とはいえやっぱLispエイリアンくらいにキモかったりする許せないな・・・
347デフォルトの名無しさん
2022/05/17(火) 04:15:40.09ID:m02nVi8y 地溝油
製造方法
マンホールの蓋を開け、下水道内の黒く濁り、赤みを帯びたのり状の物体を掻き出し、一昼夜かけて濾過した後、
不純物を凝固させる薬品と共に煮詰めて精製、沈殿、分離など複数の工程を経て、再生食用油に仕上げる。
悪臭を放っていた物質は、この工程によりほとんど無臭になり、腐敗したドロのような廃棄油は澄みきった食用油となる。
見た目や臭いだけでは地溝油と本物の食用油を見分けることは困難であるとされる。
ただし、糞尿を加工して生産しているのではなく、レストランからの下水などに流れ込む油分を地溝油の生産に使用している。
製造方法
マンホールの蓋を開け、下水道内の黒く濁り、赤みを帯びたのり状の物体を掻き出し、一昼夜かけて濾過した後、
不純物を凝固させる薬品と共に煮詰めて精製、沈殿、分離など複数の工程を経て、再生食用油に仕上げる。
悪臭を放っていた物質は、この工程によりほとんど無臭になり、腐敗したドロのような廃棄油は澄みきった食用油となる。
見た目や臭いだけでは地溝油と本物の食用油を見分けることは困難であるとされる。
ただし、糞尿を加工して生産しているのではなく、レストランからの下水などに流れ込む油分を地溝油の生産に使用している。
348デフォルトの名無しさん
2022/05/24(火) 12:35:29.96ID:Kl1KnEA9 保守age
349デフォルトの名無しさん
2022/05/25(水) 21:23:55.21ID:7RZ1XdGR ほしゆ(´・ω・)
350デフォルトの名無しさん
2022/05/25(水) 21:33:26.26ID:9VfmR61D Rustスレ→毎日論争が起こるぐらい盛り上がってる
Goスレ→言語とは関係ない雑談、保守レスのみ
俺悲しいよ。Goが覇権取るんじゃなかったのか?
Goスレ→言語とは関係ない雑談、保守レスのみ
俺悲しいよ。Goが覇権取るんじゃなかったのか?
351デフォルトの名無しさん
2022/05/25(水) 23:50:38.22ID:o5yOJbyP 読んでみたら論争ではなく罵り合いだった
352デフォルトの名無しさん
2022/05/26(木) 07:51:36.31ID:DSAsGiq3 ここは平和なスレッドですね
353デフォルトの名無しさん
2022/05/26(木) 08:32:25.22ID:eMWKjdxZ もう煽りにはスルーで対応してるからな
354デフォルトの名無しさん
2022/05/27(金) 12:51:06.65ID:HtJjrKPX 良スレage
355デフォルトの名無しさん
2022/05/28(土) 08:41:36.46ID:X7r5mWHS ほs
356デフォルトの名無しさん
2022/05/28(土) 09:13:50.20ID:J4aLLI1r もう誰もGoの話してない(´・ω・`)
357デフォルトの名無しさん
2022/05/28(土) 09:56:04.69ID:TjhvK20u う、うん…(´・ω・`)
358デフォルトの名無しさん
2022/05/29(日) 00:03:28.97ID:gGGconts じゃあとりあえずゴーファー君の話からしてみようか
359デフォルトの名無しさん
2022/05/29(日) 00:10:52.22ID:KjtlvxgT ʕ◔ϖ◔ʔ<見ーあーげてGolang~♪
360デフォルトの名無しさん
2022/05/29(日) 10:24:41.43ID:RueAH8As361デフォルトの名無しさん
2022/05/29(日) 11:13:23.02ID:awmGnFTR ぬるぽ
362デフォルトの名無しさん
2022/05/29(日) 12:35:29.89ID:vQDLB6Zc おヒマなら来てよネ!
363デフォルトの名無しさん
2022/05/29(日) 22:07:08.64ID:A97dCucU 言語仕様をそれなりに語れる言語って実質rustしかないからな
C/C++の全盛期を思い起こされる
C/C++の全盛期を思い起こされる
364デフォルトの名無しさん
2022/05/30(月) 16:23:22.11ID:4zxh/3Pl テスト
365デフォルトの名無しさん
2022/05/31(火) 00:46:57.29ID:9sDYyILN おやすみなさい(´・ω・`)
366デフォルトの名無しさん
2022/06/01(水) 00:20:40.11ID:BGkpRkuF 6月age
367デフォルトの名無しさん
2022/06/01(水) 12:28:52.22ID:t4/V77Jz go!
368デフォルトの名無しさん
2022/06/02(木) 19:12:38.94ID:5CwDqghz いつの間にか世間じゃ1.18の時代なんだなぁ
Lambda の Go 実装を試しながら
Lambda の Go 実装を試しながら
369デフォルトの名無しさん
2022/06/03(金) 16:01:17.30ID:/+UrJdaf ・
370デフォルトの名無しさん
2022/06/04(土) 18:18:41.66ID:zGOsyJWT hosyu
371デフォルトの名無しさん
2022/06/05(日) 09:59:18.23ID:fCJN3MO9 このスレって何を語るんですか?
プログラミングに関係無いスレですよね?
プログラミングに関係無いスレですよね?
372デフォルトの名無しさん
2022/06/05(日) 14:47:02.95ID:TG15kEdi go
373デフォルトの名無しさん
2022/06/05(日) 16:57:00.43ID:2BXg1+dB Hiromi
374デフォルトの名無しさん
2022/06/05(日) 20:39:41.94ID:upZoiudQ ここまで空気になるとは思わなかった
375デフォルトの名無しさん
2022/06/05(日) 20:45:22.32ID:C0pCYYy2 やはりマスコットがキモすぎたのが敗因だな
376デフォルトの名無しさん
2022/06/05(日) 21:48:52.30ID:JM/j7ObI 今は色んな現場に数年前にGoで作られたLambdaがたくさんありそう
1.11とか1.13ぐらいの
1.11とか1.13ぐらいの
377デフォルトの名無しさん
2022/06/05(日) 23:18:43.83ID:ZScjncWB Goは互換性高いからいきなりランタイムのバージョン上げてもまず問題ないでしょ
378デフォルトの名無しさん
2022/06/06(月) 07:09:48.46ID:kGAOGhGe AWS の Lambda Node.js runtime の EOLに疲れたのでGoにしていってる話、とかあるね
インタープリタじゃないので実行時に最新のランタイムで動くことを強制されないからだって
他の言語は半年とかのスパンでランタイムがバージョンアップされその度に確認やらしないとならない、という主旨
インタープリタじゃないので実行時に最新のランタイムで動くことを強制されないからだって
他の言語は半年とかのスパンでランタイムがバージョンアップされその度に確認やらしないとならない、という主旨
379デフォルトの名無しさん
2022/06/06(月) 17:50:20.14ID:SyuHO3EY AWS側でランタイムの検証負荷が高いって話?
Goだとそのあたりの責任は各利用者に丸投げできるわな。
Goだとそのあたりの責任は各利用者に丸投げできるわな。
380デフォルトの名無しさん
2022/06/06(月) 18:50:51.79ID:kGAOGhGe いや、Go だけ特殊でLinux用にコンパイルした実行イメージをzipしてデプロイするのと、Lambda実行環境との依存がnet/rpcという枯れた技術しかない
そのためバージョンアップの影響を受けそうにないという理由
つまりランタイムがないんよ
そのためバージョンアップの影響を受けそうにないという理由
つまりランタイムがないんよ
381デフォルトの名無しさん
2022/06/06(月) 19:32:52.22ID:qw/y7lM2 Lambdaはコンテナイメージがサポートされたから他の言語も塩漬けできるようになったけどね
382デフォルトの名無しさん
2022/06/11(土) 23:08:51.11ID:AbK+zg/T 保全
383デフォルトの名無しさん
2022/06/12(日) 15:58:23.25ID:kUS96AVF Genericsが出て暫く経ったので聞いてみます。ʕ◔ϖ◔ʔ
イテレーション可能な汎用的なコレクションをmap/reduce/filterなど高階関数で操作できるGitHubスターが多いライブラリは何ですか?
イテレーション可能な汎用的なコレクションをmap/reduce/filterなど高階関数で操作できるGitHubスターが多いライブラリは何ですか?
384デフォルトの名無しさん
2022/06/12(日) 19:28:08.83ID:X7K1W3yv そんなものは無い
ループを回せ
ループを回せ
385デフォルトの名無しさん
2022/06/14(火) 17:37:05.86ID:Ypv3OCUB >>383
A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...)
https://github.com/samber/lo
A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...)
https://github.com/samber/lo
386デフォルトの名無しさん
2022/06/14(火) 18:20:09.37ID:VOaVS0+Q387デフォルトの名無しさん
2022/06/14(火) 23:51:33.83ID:JLIeltNP AWS Certified Developer - Associate の教科書に書いてあるけど、
AWS Lambda で、deploy package のサイズの上限が、
ZIP は250MB だけど、Docker コンテナイメージは10GB
AWSベースイメージである、Amazon Linux 2 以外にも、
Alpine, Ubuntu などで、カスタムランタイムも作れる
Ruby が簡単
AWS Lambda で、deploy package のサイズの上限が、
ZIP は250MB だけど、Docker コンテナイメージは10GB
AWSベースイメージである、Amazon Linux 2 以外にも、
Alpine, Ubuntu などで、カスタムランタイムも作れる
Ruby が簡単
388デフォルトの名無しさん
2022/06/15(水) 01:49:19.21ID:SBK/Y+J6 >>386
https://github.com/elliotchance/pie
これはチェーンが出来る。
多くの言語でコレクション操作中のエラー状態を返すという動作はあまり見ない、Rustなんかでもそう。GitHubスター数多いから挙げたが、チェーンもGoの模範的な1行の長さなどがあるし、Goはメソッドチェーンそのものをあまり勧めていない。(慣例的にエラーを2番目の戻りにするから)
エラーを扱えて、チェーンができる言語ってなーに?
https://github.com/elliotchance/pie
これはチェーンが出来る。
多くの言語でコレクション操作中のエラー状態を返すという動作はあまり見ない、Rustなんかでもそう。GitHubスター数多いから挙げたが、チェーンもGoの模範的な1行の長さなどがあるし、Goはメソッドチェーンそのものをあまり勧めていない。(慣例的にエラーを2番目の戻りにするから)
エラーを扱えて、チェーンができる言語ってなーに?
389デフォルトの名無しさん
2022/06/15(水) 02:58:16.10ID:tT/4QRGb >>388
RustはResult型やOption型によってチェーンでエラーが扱われている
RustはResult型やOption型によってチェーンでエラーが扱われている
390デフォルトの名無しさん
2022/06/15(水) 05:30:30.87ID:l/JMV/GH goはそもそもエラーを扱う気概にかける言語だからどうしょうもない
毎回いちいちエラーコード返すのが作法とか何時の時代だよって感じだ
毎回いちいちエラーコード返すのが作法とか何時の時代だよって感じだ
391デフォルトの名無しさん
2022/06/15(水) 08:21:25.23ID:vYUVRfEQ392デフォルトの名無しさん
2022/06/15(水) 08:25:08.71ID:G4MQ5N+4393デフォルトの名無しさん
2022/06/15(水) 08:41:01.67ID:icfWO5Ii Rustも例外が無くエラーを返す点でGoと全く同じだが
OptionやResultといった代数的データ型で返すため抽象度の高い取り扱い及び記述がむしろシンプルさと利便性を両立させている
例外を無くした同じ方針なのにまるで原始時代への戻りと未来への発展の差を感じさせる異なる結果となった
OptionやResultといった代数的データ型で返すため抽象度の高い取り扱い及び記述がむしろシンプルさと利便性を両立させている
例外を無くした同じ方針なのにまるで原始時代への戻りと未来への発展の差を感じさせる異なる結果となった
394デフォルトの名無しさん
2022/06/15(水) 10:21:02.38ID:UTH2ZdYL 例外はgotoと同じだぞ
現代のネットワークやデータベースといった外部依存が沢山あってエラーがありふれる世界にはそぐわないからGoの値で返す方針は正しいよ
現代のネットワークやデータベースといった外部依存が沢山あってエラーがありふれる世界にはそぐわないからGoの値で返す方針は正しいよ
395デフォルトの名無しさん
2022/06/15(水) 10:33:53.80ID:pb2ts3YG Goにあと20年のキャリア賭けてみても大丈夫かね。
未経験可の案件あるから飛び込んでみようと思うんだが…
40ちょいだからあと20年は戦えると嬉しいんだが。
未経験可の案件あるから飛び込んでみようと思うんだが…
40ちょいだからあと20年は戦えると嬉しいんだが。
396デフォルトの名無しさん
2022/06/15(水) 11:06:51.75ID:eDRIEaUs >>394
Web系のエラー処理はオールオアナッシングが基本であまり細かい個別のケアが必要ないから、むしろ例外向きなんだよ
Web系のエラー処理はオールオアナッシングが基本であまり細かい個別のケアが必要ないから、むしろ例外向きなんだよ
397デフォルトの名無しさん
2022/06/15(水) 12:52:09.46ID:manFTcsW >>392
遅延評価とは反復を使い込んで消費する関数を呼ぶまで効果がない事です。どこをどう見たら即時評価だっていってますか?
明らかにチェーン生成で遅延評価です。
func Of[T any](ss []T) OfSlice[T] {
return OfSlice[T]{ss}
}
それと上記ライブラリにはforeachなんてファンクションはありません。Rustのforeachが副作用を伴う操作が出来てしまうが過去の互換性を
維持するための現在の仕様のことを見聞きして言っていますか?通常多くの言語や高階関数操作が出来るライブラリでmapとforeachの違いは
値を返すかどうかの違いでありエラーを返せるかどうかではありません。またRustがtry_for_eachが存在するのもあくまでも利便性のための
例外であり、普通は特に高階関数操作中のエラーが起こることこそが例外でダメなコード設計です。
もしコード中でコレクションに含まれるデータにより例外エラーを伴うようなコードを乱造しているのであれば”大きく”反省してください。
それとも全く分かってないのに言葉遊びしている?印象を受けます。「foreachでエラーを考慮しないのでダメ」の理由を示してください
遅延評価とは反復を使い込んで消費する関数を呼ぶまで効果がない事です。どこをどう見たら即時評価だっていってますか?
明らかにチェーン生成で遅延評価です。
func Of[T any](ss []T) OfSlice[T] {
return OfSlice[T]{ss}
}
それと上記ライブラリにはforeachなんてファンクションはありません。Rustのforeachが副作用を伴う操作が出来てしまうが過去の互換性を
維持するための現在の仕様のことを見聞きして言っていますか?通常多くの言語や高階関数操作が出来るライブラリでmapとforeachの違いは
値を返すかどうかの違いでありエラーを返せるかどうかではありません。またRustがtry_for_eachが存在するのもあくまでも利便性のための
例外であり、普通は特に高階関数操作中のエラーが起こることこそが例外でダメなコード設計です。
もしコード中でコレクションに含まれるデータにより例外エラーを伴うようなコードを乱造しているのであれば”大きく”反省してください。
それとも全く分かってないのに言葉遊びしている?印象を受けます。「foreachでエラーを考慮しないのでダメ」の理由を示してください
398デフォルトの名無しさん
2022/06/15(水) 13:27:56.57ID:LjsAAUyE >>397
rustのitertools::foreachはそもそも遅延評価じゃないし、過去の互換のために残されているのはその通り。ドキュメントに明記されている
遅延評価じゃなく積極的な評価だから例外が考慮できるといえるがrustの真価は高階関数操作が共通的であれば最適化されること。goが同様の操作を最適化するかどうかは知らん
rustのitertools::foreachはそもそも遅延評価じゃないし、過去の互換のために残されているのはその通り。ドキュメントに明記されている
遅延評価じゃなく積極的な評価だから例外が考慮できるといえるがrustの真価は高階関数操作が共通的であれば最適化されること。goが同様の操作を最適化するかどうかは知らん
399デフォルトの名無しさん
2022/06/15(水) 14:22:43.40ID:U1nmudTR GoはそもそもGCがあってランタイムが重たい高水準言語で、ローカル変数でも必要ならヒープに確保するし、
GCどころかヒープすらなくても動くRustとは最適化の文脈が違いすぎて・・・
GCどころかヒープすらなくても動くRustとは最適化の文脈が違いすぎて・・・
400デフォルトの名無しさん
2022/06/15(水) 14:31:21.29ID:LjsAAUyE アホか、レジスタ数が限られてる現代未来において必要ならローカル変数なんかヒープやスタックに確保するのは当たり前だ。
そもそもマルチタスクOSで動く今のプログラムは普通に変数はヒープの間を行ったり来たり
ランタイムが重いんじゃなく、ランタイム大きい。最適化の度合いも近代的な言語で大手企業が支援あれば大差ない。
そんな事やってるからRustが嫌われるんだぞ、馬鹿野郎
そもそもマルチタスクOSで動く今のプログラムは普通に変数はヒープの間を行ったり来たり
ランタイムが重いんじゃなく、ランタイム大きい。最適化の度合いも近代的な言語で大手企業が支援あれば大差ない。
そんな事やってるからRustが嫌われるんだぞ、馬鹿野郎
401デフォルトの名無しさん
2022/06/15(水) 14:37:28.29ID:xX6WUJu5 Rustは低レベルなシステムプログラミングに使えることが目的な特殊な言語なので
402デフォルトの名無しさん
2022/06/15(水) 15:16:09.46ID:eDRIEaUs >>397
ストリーム系APIでいう遅延評価というのは一般にいくつかのレベルがある
例 : items.a().b()
1. 最終的に結果を列挙しようとする段階でaとbの操作を実行する。実行順序は、aの操作をitemsの全ての要素に対して実行した後にbの操作を全ての要素に対して実行する。
2. 可能な限り列挙を繰り返さない。可能であれば、1要素毎にaとbの操作を実行し、次の要素に進む。一時バッファを使用しない。
3. 実際に要素が必要になるまでitemsの各要素を生成しない。つまり無限に続くシーケンスの実装が可能。
例えばシーケンスの順序を逆転させるような操作は一度全てを列挙しないといけなかったりするから、普通はこれらのハイブリッドな実装となる。
>>388で実現されてるのはこのレベル1までだね。
ストリーム系APIでいう遅延評価というのは一般にいくつかのレベルがある
例 : items.a().b()
1. 最終的に結果を列挙しようとする段階でaとbの操作を実行する。実行順序は、aの操作をitemsの全ての要素に対して実行した後にbの操作を全ての要素に対して実行する。
2. 可能な限り列挙を繰り返さない。可能であれば、1要素毎にaとbの操作を実行し、次の要素に進む。一時バッファを使用しない。
3. 実際に要素が必要になるまでitemsの各要素を生成しない。つまり無限に続くシーケンスの実装が可能。
例えばシーケンスの順序を逆転させるような操作は一度全てを列挙しないといけなかったりするから、普通はこれらのハイブリッドな実装となる。
>>388で実現されてるのはこのレベル1までだね。
403デフォルトの名無しさん
2022/06/15(水) 15:20:29.18ID:eDRIEaUs404デフォルトの名無しさん
2022/06/15(水) 18:44:38.49ID:vYUVRfEQ 半分禁じ手に近いけど、deferでrecoverするという手も無くはない
あれは日和ったと見るべきか
あれは日和ったと見るべきか
405デフォルトの名無しさん
2022/06/15(水) 19:45:11.38ID:LjsAAUyE >>402
遅延評価と「無限に続くシーケンスの実装」はまた別問題だ。ほとんどのプログラムはfilterやmapも有限長だけで十分機能する。
Pythonのコルーチェンyield中断と同じく、それを基にしたRubyの.lazyや、さらに進んだC#のLINQなどは無限長の操作を可能にするが
Rustの無限長イテレーターはRangeやstd::iter::repeatにおいて無限長を扱えるだけであり、yieldはまだ実験的。
というか迷惑だからRustスレか言語比較してるスレでやって攻撃的な人格疲労しろよ
遅延評価と「無限に続くシーケンスの実装」はまた別問題だ。ほとんどのプログラムはfilterやmapも有限長だけで十分機能する。
Pythonのコルーチェンyield中断と同じく、それを基にしたRubyの.lazyや、さらに進んだC#のLINQなどは無限長の操作を可能にするが
Rustの無限長イテレーターはRangeやstd::iter::repeatにおいて無限長を扱えるだけであり、yieldはまだ実験的。
というか迷惑だからRustスレか言語比較してるスレでやって攻撃的な人格疲労しろよ
406402
2022/06/15(水) 19:52:07.91ID:eDRIEaUs407デフォルトの名無しさん
2022/06/15(水) 20:33:08.01ID:LjsAAUyE >>406
そうか?チョットでも知ってればGoはyieldなんてキーワードはサポートしてないので安易な無限長をサポートするわけない。
最初の何も見ずforeach言ってるRustバカと一緒で、コレクションに含まれる高階関数操作で例外を考慮する状況がなぜ正しいのか説明できていない。
それだったらまだ蛇足的に挙げた無限長が扱えない事のほうが欠点だ、ほとんどの状況は高階関数系で例外なんてforeachでもEachでも考慮しない
上のライブラリはチェーン連鎖でコピーが発生するのはその通りだが、例えばfilterにmapをつなげて最後にcollectするような操作は上記の遅延評価や
無限リスト、そして例外とは何の関係もない。言語的な宗教戦争をやってるバカようにしか見えない、とてつもなく迷惑この上ない行為だ
そうか?チョットでも知ってればGoはyieldなんてキーワードはサポートしてないので安易な無限長をサポートするわけない。
最初の何も見ずforeach言ってるRustバカと一緒で、コレクションに含まれる高階関数操作で例外を考慮する状況がなぜ正しいのか説明できていない。
それだったらまだ蛇足的に挙げた無限長が扱えない事のほうが欠点だ、ほとんどの状況は高階関数系で例外なんてforeachでもEachでも考慮しない
上のライブラリはチェーン連鎖でコピーが発生するのはその通りだが、例えばfilterにmapをつなげて最後にcollectするような操作は上記の遅延評価や
無限リスト、そして例外とは何の関係もない。言語的な宗教戦争をやってるバカようにしか見えない、とてつもなく迷惑この上ない行為だ
408デフォルトの名無しさん
2022/06/15(水) 21:34:23.56ID:KoNFWfWJ409デフォルトの名無しさん
2022/06/15(水) 22:33:42.84ID:vYUVRfEQ Goならyieldみたいな妙なことしなくてもgoroutine内でループしてチャネルで送りつければいいだけだもんな
410デフォルトの名無しさん
2022/06/15(水) 22:39:20.20ID:vYUVRfEQ 妙でない==基本的な機能の中で説明できる
yieldなんてgoto並みに不自然じゃん
yieldなんてgoto並みに不自然じゃん
411デフォルトの名無しさん
2022/06/15(水) 22:48:49.45ID:8rndrL7k >>395
Go一本に掛けるの厳しくないか。
Go一本に掛けるの厳しくないか。
412デフォルトの名無しさん
2022/06/15(水) 23:39:49.40ID:icfWO5Ii >>405
それは君の理解が間違っている
> Rustの無限長イテレーターはRangeやstd::iter::repeatにおいて無限長を扱えるだけであり、
その部分が完全にウソ
Rustのイテレータは誰もが自由に任意の無限長イテレータを作成可能
そしてその無限長イテレータに対して任意の別のイテレータを好きなだけチェーンさせて動作可能
これはRustのイテレータが中間生成物(リストや配列やベクタ)を作成しないため可能となっている
Goで整備するときもここが重要なポイントとなってくる
それは君の理解が間違っている
> Rustの無限長イテレーターはRangeやstd::iter::repeatにおいて無限長を扱えるだけであり、
その部分が完全にウソ
Rustのイテレータは誰もが自由に任意の無限長イテレータを作成可能
そしてその無限長イテレータに対して任意の別のイテレータを好きなだけチェーンさせて動作可能
これはRustのイテレータが中間生成物(リストや配列やベクタ)を作成しないため可能となっている
Goで整備するときもここが重要なポイントとなってくる
413デフォルトの名無しさん
2022/06/16(木) 00:21:02.73ID:wccj32jk 無限リストって実際に無限長の何かを使うことは滅多になくて、あくまで遅延リストとして適切に実装されているかどうかの判定基準なんだよね
無限長リストを扱える構造になっていることは、メモリに乗らない巨大なファイルを一行ずつ読むような、文字通りストリーミング処理が必要な状況で非常に有用なんだよ
無限長リストを扱える構造になっていることは、メモリに乗らない巨大なファイルを一行ずつ読むような、文字通りストリーミング処理が必要な状況で非常に有用なんだよ
414デフォルトの名無しさん
2022/06/16(木) 01:51:06.21ID:lg2Mpz7e 結局2種類のうちどちらを選ぶか、だけの問題
(A) 遅延処理
・メソッドチェーン時の中間生成配列などを無くせる
・無限長も扱える
・無駄がなく有利
(B) 即時処理
・メソッドチェーン時の中間生成配列などが必ず必要となる
・無限長を扱えない
・(A)よりも不利
RubyのlazyやRustのイテレータはもちろん(A)タイプ
Goでも欲しいのは(A)
(B)タイプのものは検討する必要がない
(A) 遅延処理
・メソッドチェーン時の中間生成配列などを無くせる
・無限長も扱える
・無駄がなく有利
(B) 即時処理
・メソッドチェーン時の中間生成配列などが必ず必要となる
・無限長を扱えない
・(A)よりも不利
RubyのlazyやRustのイテレータはもちろん(A)タイプ
Goでも欲しいのは(A)
(B)タイプのものは検討する必要がない
415デフォルトの名無しさん
2022/06/16(木) 02:11:04.77ID:TlphqPPg Go 2のProposalを見ると
https://go.googlesource.com/proposal/+/refs/heads/master/design/43651-type-parameters.md
> We do not expect approaches like the C++ STL iterator types to become widely used. In Go that sort of idea is more naturally expressed using an interface type. In C++ terms, using an interface type for an iterator can be seen as carrying an abstraction penalty, in that run-time efficiency will be less than C++ approaches that in effect inline all code; we believe that Go programmers will continue to find that sort of penalty to be acceptable.
って書いてあるけどまあGoはそういう言語で、そこまで最適化にこだわる言語じゃない
最適化にこだわるひとはRustとかC++とか使うべき
https://go.googlesource.com/proposal/+/refs/heads/master/design/43651-type-parameters.md
> We do not expect approaches like the C++ STL iterator types to become widely used. In Go that sort of idea is more naturally expressed using an interface type. In C++ terms, using an interface type for an iterator can be seen as carrying an abstraction penalty, in that run-time efficiency will be less than C++ approaches that in effect inline all code; we believe that Go programmers will continue to find that sort of penalty to be acceptable.
って書いてあるけどまあGoはそういう言語で、そこまで最適化にこだわる言語じゃない
最適化にこだわるひとはRustとかC++とか使うべき
416デフォルトの名無しさん
2022/06/16(木) 08:44:05.77ID:wccj32jk >>415
これは遅延リストを否定しているのではない
C++のようなゼロオーバーヘッドは目指さないよ、もしイテレータを抽象化するなら実行時のオーバーヘッドを受け入れて普通にInterface使う想定だよと言っていて、
将来的に>>414の(A)のスタイルのイテレータを導入する可能性は下記の通り肯定している
> As we get more container types, we may develop a standard Iterator interface. That may in turn lead to pressure to modify the language to add some mechanism for using an Iterator with the range clause. That is very speculative, though.
これは遅延リストを否定しているのではない
C++のようなゼロオーバーヘッドは目指さないよ、もしイテレータを抽象化するなら実行時のオーバーヘッドを受け入れて普通にInterface使う想定だよと言っていて、
将来的に>>414の(A)のスタイルのイテレータを導入する可能性は下記の通り肯定している
> As we get more container types, we may develop a standard Iterator interface. That may in turn lead to pressure to modify the language to add some mechanism for using an Iterator with the range clause. That is very speculative, though.
417デフォルトの名無しさん
2022/06/16(木) 10:46:03.49ID:8bJC6Uow >>411
JavaとPHpだけじゃ不安なんだ
JavaとPHpだけじゃ不安なんだ
418デフォルトの名無しさん
2022/06/16(木) 11:54:55.58ID:4wdIdA1r >>417
PHPてw
PHPてw
419デフォルトの名無しさん
2022/06/16(木) 17:42:32.41ID:T9ZCQ85W420デフォルトの名無しさん
2022/06/16(木) 19:30:57.98ID:33b0nQQ5421デフォルトの名無しさん
2022/06/16(木) 21:18:25.47ID:fyAXkPds■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 台湾有事での集団的自衛権行使に賛成48%、「反対」が44.2% [♪♪♪★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★12 [BFU★]
- 中国・国連大使「日本側は反省せず、発言の撤回拒否」 書簡を国連事務総長に送る [♪♪♪★]
- 首相官邸前で「戦争あおるな」 台湾有事巡る答弁に抗議 ★3 [蚤の市★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★13 [BFU★]
- 【NHK】受信料の未払い督促を10倍に強化… 支払い拒否が続くと民事手続きも 「カーナビも受信料いただきます」方針 [冬月記者★]
- 他サポ 2025-260
- 【フジテレビ】2025 FORMULA 1【NEXT】Lap600
- 2025 SUPER FORMULA Lap18
- 【DAZN】フォーミュラGP【F1 2 3 SF P】Lap1807
- 京都競馬4回5日目エリザベス女王杯★3
- 福島競馬3回5日目
- 【実況】博衣こよりのえちえちゼルダの伝説 ムジュラの仮面🧪 ★4
- 中国駐日大使館「釣魚島とその付属島嶼は中国固有の領土」愛国者ブチギレへ [834922174]
- 小野田大臣「それ正式なデータですか?報道ベースですよね」(10万いいね) [237216734]
- 日本人の48%覚悟完了… [819729701]
- 🏡🏡😅🏡🏡
- 女の子、プチ整形で垢抜けまくってしまうwwwwwwwwwwwwwwwwwwwwwwww [329329848]
