次世代言語27 Nim Zig Pony Carbon Gleam (308レス)
1-

50: (ワッチョイ adda-TI6p) 2022/08/17(水)22:39 ID:SgLVBpM30(1) AAS
>>47
アセンブリ知ってて損することはないけど、必須な知識ではないよ
スタックやヒープの区別について分かっていればよくて、理解のための手段のひとつとしてアセンブリが提案されているだけ
他の手段で理解できるならそれで良い
Cを使いこなすのにアセンブリの知識が必須ではないのと同じ
51: (ワッチョイ 79f0-mhOm) 2022/08/17(水)23:44 ID:C+o8slGL0(1) AAS
書いたコードがどんな機械語になってるか、確認してない層が一定数存在するって事?
周りに居たら嫌だなぁ
52
(1): (ワッチョイ a5a4-n+Ky) 2022/08/18(木)00:15 ID:uPozsGij0(1) AAS
どんなバイナリになるかイメージはするけど確認なんてしないだろ
最適化ビルドするとまるで想像通りじゃなくてびびったりはする
53: (ワッチョイ 827c-Z8r5) 2022/08/18(木)00:23 ID:K1uqUAUE0(1) AAS
>>52
だよね。
54: (ワッチョイ e9e6-xzlL) 2022/08/18(木)01:11 ID:yLDzsouG0(1/2) AAS
>>42
俺特殊なハードウェア用のコンパイラとか作ってたんだけど
コンパイラ作ってようやくCがちゃんと理解できたよ
マジでコンパイラ作らないとわらないと思う
55
(1): (アウアウウー Saa5-oUG4) 2022/08/18(木)11:25 ID:p/limWqpa(1) AAS
外部リンク:www.kinokuniya.co.jp
ISBN 4797337958
56: (ワッチョイ e9e6-xzlL) 2022/08/18(木)12:21 ID:yLDzsouG0(2/2) AAS
>>55
これはまあまあおすすめ
ただ32bitCPU時代に書かれた本なのでそこが微妙なのと
理論的なものがほとんどなく構文解析もJavaCC使ってるし
コード生成も毎回演算結果をスタックにpushするようなことをやってた気がする
allocaも自前で実装するし
ただCのような言語をアセンブリ言語へコンパイルするための勉強としては悪くない
57: (アウアウウー Saa5-oUG4) 2022/08/18(木)14:58 ID:qt1eMpHHa(1) AAS
著者はruby厨
racc使う予定だったらしい
58: (ワッチョイ e936-4eON) 2022/08/18(木)21:22 ID:1X5HVpNn0(1) AAS
intel ISAのドキュメントがオレオレ用語多くて意味わからん
59: (ドコグロ MM4f-06yp) 2022/09/05(月)00:54 ID:cFc+MJ1wM(1) AAS
あげ
60
(2): (ワッチョイ 5f7c-eJ3+) 2022/09/05(月)01:08 ID:9iTWKe040(1) AAS
nimも早くnull安全にしてくれないかね。
61: (ワッチョイ 0701-Jj1I) 2022/09/05(月)01:34 ID:ARttffD10(1) AAS
ドラゴンブックを見て一つ一つ実装していくのが良いですよ。
誤植が猛烈に多いのも練習問題のような気がしてきますよ。
62: (テテンテンテン MM8f-jyuF) 2022/09/05(月)08:15 ID:HWNfM8e/M(1) AAS
>>60
このあたりは偏執狂のRustの方が上手だな。
いっそのこと参照型のゼロ値は禁止すればいいのに。
63: (ワッチョイ 5f4b-Iguz) 2022/09/05(月)22:33 ID:1hFtemgL0(1) AAS
>>60

std/options で

ひとまずOK じゃないか ?
64
(2): (ワッチョイ 4704-Ka/N) 2022/09/06(火)04:20 ID:6xx96XME0(1) AAS
Not nil annotationはversion2.xで使えるようになるらしいよ。
外部リンク:github.com
65: (テテンテンテン MMff-jyuF) 2022/09/06(火)08:29 ID:AHhd6ypaM(1) AAS
>>64
not nil がデフォルトになるとあるね。
66: (ワッチョイ 5f4b-Iguz) 2022/09/06(火)13:26 ID:3wQQbwTr0(1) AAS
>>64

2.0がいつ出るかなんて全く不明
1.8.0の次は1.10.0
次は1.12.0となって。。。
恐らく5年以上先 ?
67: (テテンテンテン MM8f-jyuF) 2022/09/08(木)12:38 ID:H4D+Re2GM(1) AAS
スタックフレームて大抵の実行環境で使用されているのに、スタックフレームに特化した言語て無いよね。
なんでなんだろう?
68: (ワッチョイ 4704-Ka/N) 2022/09/08(木)17:28 ID:cKTVDYCV0(1) AAS
世の中のほとんどのプログラムにはヒープメモリが必要だからでしょ。
実行時じゃないとサイズがわからないことがあるし、スタック上に動的にメモリ領域を確保できるようにするとかなり大きめにスタックを確保しなくてはならくなるだろうし。
69
(2): (ワッチョイ e7da-ZIhe) 2022/09/08(木)18:05 ID:U6/gufpm0(1) AAS
スタックフレームに特化した言語ってどういうものを想定してるの?
Forthみたいなスタック指向の言語とは違うよね
70: (ワッチョイ 5fe0-InTp) 2022/09/08(木)18:22 ID:ydRaiFc90(1) AAS
実CPUのスタック操作なんて仕様にいれたら足枷だしね
関数のABIとは別に仮想的なローカルスタックを扱えるかんじ?
71: (ブーイモ MM8f-W2iS) 2022/09/08(木)18:50 ID:11l7kxGRM(1) AAS
>>69
COBOL++でしょ
72
(1): (テテンテンテン MM8f-jyuF) 2022/09/08(木)19:36 ID:gDKj2SJwM(1) AAS
>>69
スタックフレームならではの特性をコードに明記できる、といったイメージ。
例えばスタックにあるインスタンスしか受け付けない(参照)引数とかあれば、shared ptrとかunique ptrの参照渡しも安全に使える。
Rustがそこそこいい感じなんだけど、なんか中途半端。
73
(2): (ブーイモ MM8f-W2iS) 2022/09/08(木)21:06 ID:g68A8C0LM(1) AAS
>>72
Rustなら実用上はCopyで十分
74: (ワッチョイ 0701-Iguz) 2022/09/08(木)22:22 ID:D8Erj63H0(1) AAS
>>73
rustの話は向こうのスレでお願い
75: (ワッチョイ bf8c-jyuF) 2022/09/09(金)07:32 ID:v1OYGNdb0(1) AAS
>>73
そういうのが中途半端だと言っている。日本語も読めないのかよ。
76: (ワッチョイ a95f-Yvh5) 2022/09/16(金)11:26 ID:eTFy07in0(1) AAS
800 デフォルトの名無しさん sage 2022/09/15(木) 23:09:10.28 ID:KFRYW2wo
次スレはこれらの言語を入れてください
Zig
外部リンク:ziglang.org
Jakt
外部リンク:github.com
77: (ワッチョイ a563-jxjI) 2022/09/16(金)11:34 ID:CoCetj5m0(1/3) AAS
Jaktは知らないな
どんな処理系かな
78: (ワッチョイ a563-FZWc) 2022/09/16(金)11:58 ID:CoCetj5m0(2/3) AAS
パッと見の構文はRustソックリ
borrow checkerはなく、代わりにARCを使って実行時にメモリ管理しようとしてるっぽい

なんでRustやZig使わないんだろうと気になったけど、自作したSerenityOSのためのエコシステムはできるだけすべて自作したい、くらいの動機みたい
参考: 外部リンク:awesomekling.github.io
まあZig未満のドマイナー言語にとどまりそう
79: (ワッチョイ a563-FZWc) 2022/09/16(金)12:01 ID:CoCetj5m0(3/3) AAS
書き忘れた
jaktはC++へのトランスパイラ、ってのも特徴

SerenityOSはC++で作ってたから、C++トランスパイラにすれば移行しやすかったってことだろう
1-
あと 229 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.020s