「コンパイラ・スクリプトエンジン」相談室16 (646レス)
上下前次1-新
1(5): デフォルトの名無しさん [sage] 2014/07/20(日) 11:16:19.37 ID:p6eMVAxc(1/2) AAS
プログラミング言語処理系の開発に興味のある人達のスレッドです。
字句解析・構文解析から,データフロー解析,ループ並列化,データ分散,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン,
SIMD命令生成,VLIW向けクラスタリング,スクラッチメモリ向け最適化,リンク時最適化,
JIT,動的バイナリ変換等の各種最適化,それにVM,GC,低消費電力化などなど。
意味論に関する話題も歓迎です。
Wikiのまとめページ
外部リンク:www6.atwiki.jp
622: デフォルトの名無しさん [] 2017/06/26(月) 19:12:09.78 ID:6CpK5SZQ(1) AAS
>>606606(1): デフォルトの名無しさん [sage] 2016/06/05(日) 03:05:17.84 ID:wHhH7979(1) AAS
gccもclangもjavacもc#も信用ならんって分野ももしかしたらどこかにはあるのかもな
実際コンパイラはソフトウェア検証の好対象
CakeMLとか
623: デフォルトの名無しさん [sage] 2018/02/16(金) 06:02:50.68 ID:W1XJdyx1(1) AAS
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
624: 片山博文MZ ◆T6xkBnTXz7B0 [sage] 2018/03/02(金) 16:53:16.42 ID:R33psDql(1) AAS
外部リンク:www.softantenna.com
625: デフォルトの名無しさん [] 2018/05/23(水) 22:10:50.46 ID:Au5e7VGg(1) AAS
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
RSQUI
626: デフォルトの名無しさん [] 2018/07/04(水) 23:52:46.72 ID:gFgZc5FG(1) AAS
CL2
627: デフォルトの名無しさん [sage] 2018/07/16(月) 22:53:08.29 ID:oM74pxCP(1) AAS
テスト😊
628: ◆QZaw55cn4c [sage] 2018/09/04(火) 14:52:35.77 ID:lJV/Mb/R(1) AAS
形式言語の祖・生成文法のチョムスキー90歳の言葉
外部リンク:www.videonews.com
629: デフォルトの名無しさん [] 2019/03/21(木) 17:55:33.49 ID:YzD9JPpd(1) AAS
esprima/escodegenなんかでJS ASTを扱ってる人に質問。
ASTを舐めて変数の型を推論したものをノードに紐付けて記録しておきたいんだけど、JS ASTの場合
ASTの中にメタデータをぶら下げるのと外で持つのとどっちが一般的なんだろう?
中に持つ場合はどこにどういうプロパティ名でぶら下げるか、外の場合はノードの位置を特定する
パスのようなものが必要になるけどそれをどうするか。
630: デフォルトの名無しさん [sage] 2021/02/24(水) 20:03:26.16 ID:1LsYaFKv(1) AAS
test
631: デフォルトの名無しさん [sage] 2021/06/01(火) 15:18:43.13 ID:IjgT90G7(1/2) AAS
お前ら元気か?
Prologおじさんが2003年頃からPrologの人気がなくなったとか言ってたんだが、2chのせいではないかと思ってきてみたぜ。
めっちゃ過疎ってるじゃないか。というか2chいつの間にか5chになってたんだな。
Prologは操作的意味論をそのまま書き下して言語作れるので良いぞw
% e.pl
e(I, I) :- integer(I).
e(E1+E2, I) :- e(E1, I1), e(E2, I2), I is I1+I2.
:- e(1+2+3+4,R),!,writeln(R).
:- halt.
というファイルを作って
$ swipl e.pl
10
だ。こんな短く言語実装できる言語は他にないぜw
632: デフォルトの名無しさん [sage] 2021/06/01(火) 15:25:20.70 ID:IjgT90G7(2/2) AAS
Prologなら型システムを作るのもお手の物だ。
t(I,int):- integer(I).
t(E1+E2,int):- t(E1,int), t(E2,int).
:- t(1+2+3,T),!,writeln(T).
:- halt.
これだけ。Prologは関数というか述語のネストをできなくして
述語の引数は全てクォートとされた式のように扱われ、
変数がアンクォートな感じに書ける。
故にLispのS式より複雑な優先順位付きの演算子を使った式が扱えて便利だ。
ってことで、暇な奴がいたら使ってみて欲しいんダゼ。
じゃあなw
633: デフォルトの名無しさん [sage] 2021/06/23(水) 07:02:20.99 ID:HYjDIJ1V(1) AAS
Prolog興味あるけどCとかJavaとかPythonとかのメジャーどころと違って教科書みたいなアカデミックな本しか見つからないから並以下グラマの俺には無理
634: デフォルトの名無しさん [sage] 2021/10/13(水) 08:22:07.76 ID:Qk99MJFD(1) AAS
岩波のprologのプログラミング作法読んでみたら?
第5世代が成果をオープンソースに出来ていればなあ
635: デフォルトの名無しさん [sage] 2023/07/05(水) 03:42:10.87 ID:e/cCV0Lv(1) AAS
>>311人は死後49日は漂うと云われているな
636: デフォルトの名無しさん [sage] 2023/09/24(日) 11:28:47.13 ID:Iodo3XEj(1) AAS
インタプリタの作り方 −言語設計/開発の基本と2つの方式による実装− - インプレスブックス
外部リンク:book.impress.co.jp
637: デフォルトの名無しさん [sage] 2023/10/06(金) 08:06:12.42 ID:NmxdZAP9(1) AAS
バックエンドの作り方はググれば解説が出てくるが
“実用的な”バックエンドの作り方はさっぱりわからない
RX用のバックエンドが欲しいんだがなー
638: デフォルトの名無しさん [] 2023/11/11(土) 06:58:34.37 ID:uMtlBPBy(1/2) AAS
double a = 2.71828;
というコードをコンパイルするときに、2進浮動小数点数に変換しないといけないと思います。
2進数浮動小数点数に丸めるときに、四捨五入(0捨1入)したり、一番近い2進浮動小数点数に変換したりといろいろな方法がありますが、その方式を決定するのもコンパイラの仕事ですか?
計算機イプシロンを ε_M とします。
2進浮動小数点数に丸めるときの方式として、四捨五入(0捨1入)が採用されているかどうかを確かめる方法として、
eps = 2^(-52)
1 + (1/2) * eps
を計算させて、それが 1 + eps に等しいかどうかをみるという方法が数値解析の本で紹介されています。
1 + (1/2) * eps
を計算するときに、丸めとかで変な浮動小数点数になって、この紹介されている方法が実行できないとかないですか?
639(1): デフォルトの名無しさん [] 2023/11/11(土) 07:01:57.70 ID:uMtlBPBy(2/2) AAS
あと、
double a = 2.71828 * 3.141592;
というコードがあったとき、
コンパイラは、 2.71828 を丸めた2進浮動小数点数と 3.141592 を丸めた2進浮動小数点数を掛けよという機械語に翻訳するんですか?
それともこんな簡単な計算はコンパイラで予め行って、その結果を a に代入するという機械語を生成するんですか?
640: デフォルトの名無しさん [] 2023/11/11(土) 08:35:32.43 ID:fuGMacjx(1/2) AAS
double a = math.E + path.PI;
641: デフォルトの名無しさん [] 2023/11/11(土) 08:37:19.10 ID:fuGMacjx(2/2) AAS
宿題は宿題スレへ
642: デフォルトの名無しさん [sage] 2023/11/11(土) 11:05:25.10 ID:5AzCeqvD(1) AAS
はい
あります
はい
場合によります(最適化という追加処理)
643: デフォルトの名無しさん [age] 2025/05/12(月) 14:33:58.90 ID:Zw0HuL6G(1) AAS
こういう言語作る系スレが廃れた原因は何だろう
644: デフォルトの名無しさん [sage] 2025/05/12(月) 15:01:28.97 ID:zCv6/zTu(1) AAS
>>639
そういうコードはコンパイル時に計算されて
実行時には計算結果がそのまま代入されるけど
「コンパイル時に計算」の際の浮動小数点数での計算の扱いには無頓着で良いと思ってるの?
645: デフォルトの名無しさん [sage] 2025/05/12(月) 15:24:34.24 ID:FL+WAIid(1) AAS
C言語にはfesetenvのような浮動小数点数プロセッサのモード切替関数もあるからな
コンパイル時に計算してしまうことでそれが反映されなくなるのもそれはそれで問題になるケースがある
646: デフォルトの名無しさん [sage] 2025/05/13(火) 09:27:05.77 ID:C/NhftFY(1) AAS
Rustなら多い日も安心
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.132s*