次世代言語27 Nim Zig Pony Carbon Gleam (308レス)
次世代言語27 Nim Zig Pony Carbon Gleam http://mevius.5ch.net/test/read.cgi/tech/1659660050/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
31: デフォルトの名無しさん (ワッチョイ 422c-GRcq) [sage] 2022/08/14(日) 19:43:04.36 ID:H+Dty+yM0 可変長配列とか文字列型などの必要なメモリ量が実行時に決まるものや 関数やブロックのスコープと変数の寿命が対応しないもの(GCで管理されるオブジェクト)などはヒープ使うしかないでしょ。 けどローカル変数などをヒープに置くと効率悪いし。 http://mevius.5ch.net/test/read.cgi/tech/1659660050/31
32: デフォルトの名無しさん (ワッチョイ 4201-8lLW) [sage] 2022/08/14(日) 19:55:23.52 ID:osAuRY7C0 >>29 ハードウェアスタックがないマシン(汎用機とか)もあるから実装依存なのは確かだけどそういうマシンでもソフトウェアでスタック作ってるので実装としてはたいして変わらん http://mevius.5ch.net/test/read.cgi/tech/1659660050/32
33: デフォルトの名無しさん (ワッチョイ 422c-GRcq) [sage] 2022/08/14(日) 19:58:39.91 ID:H+Dty+yM0 >>30 関数の外にある変数やstatic変数はstatic storageというプロセスが生まれてから死ぬまで存在し続ける領域に置かれるよ。 詳しくはdata segmentとかbssとかで検索してね。 static変数は値を保持し続けないといけないからスタックに置けないし、 関数の外にある変数は複数の関数から共有されるのでコンパイル時かリンク時にアドレスが決まってないといけないと思うのでおそらくスタックに置けない。 http://mevius.5ch.net/test/read.cgi/tech/1659660050/33
34: デフォルトの名無しさん (アウアウウー Saa5-xzlL) [sage] 2022/08/14(日) 20:34:35.63 ID:d/RE/iMKa C++の定石としてオブジェクトはスタックに置くのが基本だよ デストラクタを動かしたいからね ヒープにデータを割り当てたい時は構造体やクラスでラップするのが基本 http://mevius.5ch.net/test/read.cgi/tech/1659660050/34
35: デフォルトの名無しさん (ワッチョイ adda-TI6p) [sage] 2022/08/14(日) 20:39:54.05 ID:lDco67Nc0 >>29 最適化の余地残すために規格では振る舞いしか記述しないのが基本だと思う レジスタだけ使うとかあるしね http://mevius.5ch.net/test/read.cgi/tech/1659660050/35
36: デフォルトの名無しさん (スプッッ Sd62-IWzR) [sage] 2022/08/14(日) 20:50:39.49 ID:/dHI52Jsd 可変長配列に限って言えばCは一応VLAがある 11からオプションだけど http://mevius.5ch.net/test/read.cgi/tech/1659660050/36
37: デフォルトの名無しさん (ブーイモ MMb6-Rl2g) [sage] 2022/08/15(月) 08:38:26.95 ID:qDRL1WTlM >>34 スマポ使えばいいだけだからそれはない http://mevius.5ch.net/test/read.cgi/tech/1659660050/37
38: デフォルトの名無しさん (アウアウウー Saa5-xzlL) [sage] 2022/08/15(月) 13:39:10.26 ID:SFJl5V0da >>37 スマポがまさに>>34のパターン使ってるんだけど http://mevius.5ch.net/test/read.cgi/tech/1659660050/38
39: デフォルトの名無しさん (ワッチョイ 027c-5Ix7) [sage] 2022/08/15(月) 15:41:07.32 ID:qHbAfBQi0 スマートポインタwって正直使う必要殆ど無いのに 全てのインスタンス生成で使うバカがいるよねw http://mevius.5ch.net/test/read.cgi/tech/1659660050/39
40: デフォルトの名無しさん (ワッチョイ 4201-8lLW) [sage] 2022/08/15(月) 16:32:14.78 ID:zxOEKBbO0 今時生ポインタでイキルバカが出てくるとはw http://mevius.5ch.net/test/read.cgi/tech/1659660050/40
41: デフォルトの名無しさん (ワッチョイ e9e6-xzlL) [sage] 2022/08/16(火) 18:56:36.29 ID:1oXHhIiq0 スタックに確保されるのがポインタなのかクラスや構造体の実態なのかをちゃんと理解してない人が多すぎるね コンパイラとかコンピュータアーキテクチャの勉強すべき そこを避けてたら絶対に使いこなせない http://mevius.5ch.net/test/read.cgi/tech/1659660050/41
42: デフォルトの名無しさん (ワッチョイ 027c-5Ix7) [sage] 2022/08/16(火) 19:04:37.29 ID:JSsOGCvC0 そもそもスタックやらヒープやらちゃんと意味が分かっている奴って アセンブラレベルで組んだことがあるとかじゃないと 知らなくても仕方ない気がするなぁ http://mevius.5ch.net/test/read.cgi/tech/1659660050/42
43: デフォルトの名無しさん (ワッチョイ 460f-U+eq) [sage] 2022/08/16(火) 19:50:02.47 ID:RYKZv1s10 使いこなす必要は無くて、理解が足りなくてもやりたい事が出来れば、それで良いと思うよ。 http://mevius.5ch.net/test/read.cgi/tech/1659660050/43
44: デフォルトの名無しさん (アウアウウー Saa5-xzlL) [sage] 2022/08/17(水) 15:25:42.74 ID:DfCxGnRFa 理解してなくてやりたいことができるってそれはたまたま動いてるか その機能が必要ないことをやってるだけ 壁が来た時ぶち当たって手遅れになる 最近スクリプト言語系のエンジニアがRustとかのモダン言語で苦しんでるのを見ると 何が理解できてないのか?を理解することってのはすごく大事 http://mevius.5ch.net/test/read.cgi/tech/1659660050/44
45: デフォルトの名無しさん (ワッチョイ 3104-GRcq) [sage] 2022/08/17(水) 16:47:04.91 ID:hcUDPGl30 Compiler explorerとかでコードがどんな風に最適化されてアセンブリ言語になるか読んでみるといいかもね。 スタックに割り当てられたローカル変数はレジスタに割り当てられる場合はあるけどグローバル変数やヒープにある変数はかならずメモリ上におかれるから毎回メモリからレジスタにロードして値を計算してからメモリにストアされる。 http://mevius.5ch.net/test/read.cgi/tech/1659660050/45
46: デフォルトの名無しさん (ワッチョイ ed7c-n+Ky) [sage] 2022/08/17(水) 17:41:05.70 ID:J/baCQNr0 最適化でキャッシュの考慮や制御までするんだから volatileないと実際どうなるかはわからんとちゃうかな http://mevius.5ch.net/test/read.cgi/tech/1659660050/46
47: デフォルトの名無しさん (ワッチョイ 9901-5Ix7) [sage] 2022/08/17(水) 17:53:10.26 ID:cnWCAZlk0 Rustやるなら当然アセンブラが理解できないとってことだね メモリ安心安全のためには必要なコストだよね http://mevius.5ch.net/test/read.cgi/tech/1659660050/47
48: デフォルトの名無しさん (ワッチョイ 9901-U+eq) [sage] 2022/08/17(水) 20:56:42.47 ID:9RiCNb2+0 プログラム書くのが本業の人なら、どうやってプログラムが動くのか知らなきゃっていうのは分かるけれど、プログラムば手段であって、コピペでも何でも良いから欲しい結果が得られるなら良いって人もいるから。 それで、Rustがそんな人に合わせる必要はないし、そんなのはPython辺りに任せて、Rustはプロフェッショナルの道具でいいんじゃないの? http://mevius.5ch.net/test/read.cgi/tech/1659660050/48
49: デフォルトの名無しさん (ワッチョイ dd5f-FS65) [sage] 2022/08/17(水) 21:08:17.88 ID:3noakHYk0 それでいいよ あっちのスレの空気持ち込まないでくれ http://mevius.5ch.net/test/read.cgi/tech/1659660050/49
50: デフォルトの名無しさん (ワッチョイ adda-TI6p) [sage] 2022/08/17(水) 22:39:10.52 ID:SgLVBpM30 >>47 アセンブリ知ってて損することはないけど、必須な知識ではないよ スタックやヒープの区別について分かっていればよくて、理解のための手段のひとつとしてアセンブリが提案されているだけ 他の手段で理解できるならそれで良い Cを使いこなすのにアセンブリの知識が必須ではないのと同じ http://mevius.5ch.net/test/read.cgi/tech/1659660050/50
51: デフォルトの名無しさん (ワッチョイ 79f0-mhOm) [sage] 2022/08/17(水) 23:44:30.76 ID:C+o8slGL0 書いたコードがどんな機械語になってるか、確認してない層が一定数存在するって事? 周りに居たら嫌だなぁ http://mevius.5ch.net/test/read.cgi/tech/1659660050/51
52: デフォルトの名無しさん (ワッチョイ a5a4-n+Ky) [sage] 2022/08/18(木) 00:15:49.61 ID:uPozsGij0 どんなバイナリになるかイメージはするけど確認なんてしないだろ 最適化ビルドするとまるで想像通りじゃなくてびびったりはする http://mevius.5ch.net/test/read.cgi/tech/1659660050/52
53: デフォルトの名無しさん (ワッチョイ 827c-Z8r5) [] 2022/08/18(木) 00:23:55.46 ID:K1uqUAUE0 >>52 だよね。 http://mevius.5ch.net/test/read.cgi/tech/1659660050/53
54: デフォルトの名無しさん (ワッチョイ e9e6-xzlL) [sage] 2022/08/18(木) 01:11:39.51 ID:yLDzsouG0 >>42 俺特殊なハードウェア用のコンパイラとか作ってたんだけど コンパイラ作ってようやくCがちゃんと理解できたよ マジでコンパイラ作らないとわらないと思う http://mevius.5ch.net/test/read.cgi/tech/1659660050/54
55: デフォルトの名無しさん (アウアウウー Saa5-oUG4) [] 2022/08/18(木) 11:25:09.48 ID:p/limWqpa https://www.kinokuniya.co.jp/f/dsg-01-9784797337952 ISBN 4797337958 http://mevius.5ch.net/test/read.cgi/tech/1659660050/55
56: デフォルトの名無しさん (ワッチョイ e9e6-xzlL) [sage] 2022/08/18(木) 12:21:45.00 ID:yLDzsouG0 >>55 これはまあまあおすすめ ただ32bitCPU時代に書かれた本なのでそこが微妙なのと 理論的なものがほとんどなく構文解析もJavaCC使ってるし コード生成も毎回演算結果をスタックにpushするようなことをやってた気がする allocaも自前で実装するし ただCのような言語をアセンブリ言語へコンパイルするための勉強としては悪くない http://mevius.5ch.net/test/read.cgi/tech/1659660050/56
57: デフォルトの名無しさん (アウアウウー Saa5-oUG4) [] 2022/08/18(木) 14:58:14.10 ID:qt1eMpHHa 著者はruby厨 racc使う予定だったらしい http://mevius.5ch.net/test/read.cgi/tech/1659660050/57
58: デフォルトの名無しさん (ワッチョイ e936-4eON) [sage] 2022/08/18(木) 21:22:03.04 ID:1X5HVpNn0 intel ISAのドキュメントがオレオレ用語多くて意味わからん http://mevius.5ch.net/test/read.cgi/tech/1659660050/58
59: デフォルトの名無しさん (ドコグロ MM4f-06yp) [] 2022/09/05(月) 00:54:15.45 ID:cFc+MJ1wM あげ http://mevius.5ch.net/test/read.cgi/tech/1659660050/59
60: デフォルトの名無しさん (ワッチョイ 5f7c-eJ3+) [] 2022/09/05(月) 01:08:51.55 ID:9iTWKe040 nimも早くnull安全にしてくれないかね。 http://mevius.5ch.net/test/read.cgi/tech/1659660050/60
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 248 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.006s