プログラミング言語処理系の開発に興味のある人達のスレッドです。
字句解析・構文解析から,データフロー解析,ループ並列化,データ分散,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン,
SIMD命令生成,VLIW向けクラスタリング,スクラッチメモリ向け最適化,リンク時最適化,
JIT,動的バイナリ変換等の各種最適化,それにVM,GC,低消費電力化などなど。
意味論に関する話題も歓迎です。
Wikiのまとめページ
http://www6.atwiki.jp/compilerandscriptengine/
探検
「コンパイラ・スクリプトエンジン」相談室16
2014/07/20(日) 11:16:19.37ID:p6eMVAxc
2014/07/20(日) 11:18:41.91ID:p6eMVAxc
誰も立てないので立てた。
需要なければこのまま放置ということで。
需要なければこのまま放置ということで。
2014/07/20(日) 11:19:36.24ID:b1uNa6xY
2014/07/20(日) 13:22:32.46ID:6KMBfrlQ
前スレ落ちたの気づかなかった>>1乙
5片山博文MZ悪魔崇拝 ◆T6xkBnTXz7B0
2014/07/22(火) 13:31:35.08ID:itpt16Wl というわけでCaperをRubyで使えるようにしなきゃいけない。。。
2014/07/23(水) 00:33:25.56ID:6DA6PhLu
最近はみんなLLVMに集まる流れなのかな
2014/07/24(木) 10:32:17.75ID:w2uo6knu
お手軽に言語作ってみますた なら
バックエンドは インタプリタか JVM かLLVM のどれかになるべ
あとは JSへのトランスレータか
意外に選択肢多いな
バックエンドは インタプリタか JVM かLLVM のどれかになるべ
あとは JSへのトランスレータか
意外に選択肢多いな
8片山博文MZ悪魔崇拝 ◆T6xkBnTXz7B0
2014/07/27(日) 13:36:28.20ID:YSqiGYKe jonigataさん、Rubyのサポートを追加しました。
2014/07/27(日) 21:59:50.89ID:aStfmk5+
JVM上で動く言語をガチで作ってる人ってバイトコードを直接出力するコンパイラ作ってるのかな。
JVM上で動くエンジン用のコードじゃなくて。
JVM上で動くエンジン用のコードじゃなくて。
10デフォルトの名無しさん
2014/07/27(日) 22:00:59.03ID:UgznbaEB そりゃそうだ。
11片山博文MZ悪魔崇拝 ◆T6xkBnTXz7B0
2014/07/28(月) 14:12:21.53ID:DUvGztkP jonigataさんと連絡取れない。。。
12片山博文MZ悪魔崇拝 ◆T6xkBnTXz7B0
2014/07/28(月) 16:55:40.10ID:SnQo0cO4 caperにRubyサポートが追加されたよ
139
2014/07/28(月) 21:54:34.37ID:zEAFz2i414片山博文MZ次期CEO ◆T6xkBnTXz7B0
2014/07/29(火) 01:15:58.91ID:qgm2mseY >>1
もっと参考URLを置いてほしいぜ
もっと参考URLを置いてほしいぜ
15片山博文MZ次期CEO ◆T6xkBnTXz7B0
2014/08/01(金) 11:03:08.58ID:fIgY7BmT caperにPHPサポートが追加されたよ!
2014/08/01(金) 15:28:56.80ID:ARdX3qTq
>>15
サポートヨロっていわれてんじゃん、がんばれ
サポートヨロっていわれてんじゃん、がんばれ
2014/08/02(土) 16:23:44.47ID:jWpcYE6C
2014/08/03(日) 01:07:00.19ID:MH7BOvZw
つかC並にJVM上で低レベルに動く言語が・・・ってどっかにありそうな気がする。
2014/08/03(日) 12:20:45.13ID:q8fBalr7
ちょっと何言ってるかわかりませんね
2014/08/03(日) 16:19:28.19ID:/m+nZnOr
>>18
日本語でおk
日本語でおk
2014/08/04(月) 00:28:33.88ID:5WaCX4TM
JVMのバイトコード吐くライブラリってもあるけど
こっちはバイトコードの知識必須
言語仕様だけ考えて満足しようぜw
こっちはバイトコードの知識必須
言語仕様だけ考えて満足しようぜw
2014/08/04(月) 02:12:43.16ID:BTc2ko+M
どうせ中間言語に落とし込むんだしバイトコードくらい余裕だろ
2014/08/08(金) 03:06:15.46ID:W/TCi66w
24デフォルトの名無しさん
2014/08/08(金) 08:30:38.85ID:pWDxpd5M guro
2014/08/08(金) 08:47:25.07ID:19ZqYpH8
>>23
あんた誰?
あんた誰?
26デフォルトの名無しさん
2014/08/08(金) 12:06:16.40ID:MJ5RFc2h >>13
まず簡単なのを作って、次は作りなおせばいいじゃん。
まず簡単なのを作って、次は作りなおせばいいじゃん。
27デフォルトの名無しさん
2014/08/08(金) 12:31:17.41ID:U1h/L2RD >>7
最近はasm.jsみたいなのもあるしね。
最近はasm.jsみたいなのもあるしね。
2014/08/08(金) 16:22:46.37ID:F5/v+VI2
>>23はウィルス注意
29デフォルトの名無しさん
2014/08/12(火) 11:48:49.30ID:AbgWlUoH マークスイープのようにGC以外のところでGCを考えずに済み
参照カウントみたいに最大停止時間が短いGCってある?
速度は問いません
参照カウントみたいに最大停止時間が短いGCってある?
速度は問いません
2014/08/12(火) 12:44:46.12ID:A03Bg3Wq
2014/08/12(火) 12:44:50.65ID:+sDF17YZ
32デフォルトの名無しさん
2014/08/13(水) 00:05:07.82ID:5Fn9SOB/2014/08/13(水) 00:29:26.50ID:IvuVUKO/
>>32
EdenだけCopy GC,OLDに行ったらMarkSweepとか色んな掛け合わせもあるみたいだね
EdenだけCopy GC,OLDに行ったらMarkSweepとか色んな掛け合わせもあるみたいだね
2014/08/14(木) 01:15:17.94ID:nk1V5Hss
mostly-concurrentマーク&スイープGCは?
1. ミューテータを止めてルートセットをマーク
2. ミューテータと並行に別スレッドでマーク
3. ミューテータを止めて再度ルートセット+残り全部をマーク
4. ミューテータと並行に別スレッドでスイープ
ってやるやつ
ライトバリアがいるからGC以外のところでGCを考えずには済まないけど (そのへんは世代別も一緒だが)
最大停止時間は短いと思うよ
1. ミューテータを止めてルートセットをマーク
2. ミューテータと並行に別スレッドでマーク
3. ミューテータを止めて再度ルートセット+残り全部をマーク
4. ミューテータと並行に別スレッドでスイープ
ってやるやつ
ライトバリアがいるからGC以外のところでGCを考えずには済まないけど (そのへんは世代別も一緒だが)
最大停止時間は短いと思うよ
35デフォルトの名無しさん
2014/09/20(土) 16:42:37.06ID:Vt9JAeIo caperが改善されて大規模なパーサーでも
早く生成できるようになったようです。
早く生成できるようになったようです。
2014/09/20(土) 17:18:58.94ID:INF4B04G
あんまりでっかいの書かないんで今まで困った事ないのだが、吉報には違いなかったりするのでお礼を述べさせて貰います、ありがとう。
>>Thanks for ジョニガタさんとMZさん
>>Thanks for ジョニガタさんとMZさん
2014/09/21(日) 00:08:58.31ID:+YftySIr
やること
★Ruby RaccとCaperの比較レビュー。
★CaperでCSVパーサーの作成。
★CaperでXMLパーサーの作成。
★Ruby RaccとCaperの比較レビュー。
★CaperでCSVパーサーの作成。
★CaperでXMLパーサーの作成。
38sage
2014/09/26(金) 04:19:50.66ID:VUi+/UsP winXP visual studio 2010 expressで
antlr4の導入できた方いらっしゃいませんでしょうか?
antlr4の導入できた方いらっしゃいませんでしょうか?
2014/09/26(金) 10:04:23.12ID:8tItaSRz
ANTLRWorks とか言うヤツはダメなん?
2014/09/27(土) 01:39:11.71ID:oNml76ai
バッチファイルみたいなのに定義ファイルかませば出せると思いきや、
JAVAしか出てこない。。。
英語よく読めない
JAVAしか出てこない。。。
英語よく読めない
2014/09/27(土) 01:53:39.94ID:PIGMRS01
akiramero
2014/10/12(日) 13:57:53.54ID:fouZ38nR
やっと簡単な電卓インタプリタができたー
43デフォルトの名無しさん
2014/10/12(日) 15:26:51.34ID:s0CJmRCd おめおめ
四則演算と簡単な制御構造が実装できると
あとは応用だから
扱う型の種類が増えない限り楽に拡張できそうだね
四則演算と簡単な制御構造が実装できると
あとは応用だから
扱う型の種類が増えない限り楽に拡張できそうだね
2014/10/13(月) 01:35:36.78ID:UPM0IlOC
演算子って四則演算以上のことやらすと必ずそいつが決めた優先順位に縛られて破綻するし
電卓ならLISPの(+ 1 2 3 4 5)みたいに演算子相当が無くてオペランド側をいくらでも増やせる構文の方が楽
電卓ならLISPの(+ 1 2 3 4 5)みたいに演算子相当が無くてオペランド側をいくらでも増やせる構文の方が楽
2014/10/19(日) 05:56:05.61ID:irMeVnbo
それもそいつが決めた優先順位なわけだが
2014/10/19(日) 07:29:43.65ID:Ww99Jszp
LISPはLISPで解析器に都合の良い構文だと思う
もちろんそういう意味で(作る側が)楽と言ってるんじゃないのは分かっているが
もう少し使う人間のことも考えてやれと
……で行き着くのも例えばpythonだったりするのでそれはそれでうーん
もちろんそういう意味で(作る側が)楽と言ってるんじゃないのは分かっているが
もう少し使う人間のことも考えてやれと
……で行き着くのも例えばpythonだったりするのでそれはそれでうーん
2014/10/19(日) 19:43:22.93ID:U9zncy/O
古代言語なんだから人間向きなわけがない
2014/10/19(日) 19:50:43.83ID:wwCHsqfk
慣れたら何とも無いけど
2014/10/19(日) 23:32:38.99ID:zZJPnNDh
>>46
FORTHが一番解析器に優しいと思う、Lispは少なくとも関数に渡す引数の数は解析で判断できるけど、FORTHはそれすら捨ててる
あとLispは支援するエディタがあれば書く事に戸惑いは殆どないよ。
読むのは適切なインデントがされていないと辛いのは本当だけどそれだってRubyやらCやらでインデント無しと変わらないと思う。
なお、Pythonはインデントが構文に含まれているのが嫌い(エディタで再フォーマットできない)
FORTHが一番解析器に優しいと思う、Lispは少なくとも関数に渡す引数の数は解析で判断できるけど、FORTHはそれすら捨ててる
あとLispは支援するエディタがあれば書く事に戸惑いは殆どないよ。
読むのは適切なインデントがされていないと辛いのは本当だけどそれだってRubyやらCやらでインデント無しと変わらないと思う。
なお、Pythonはインデントが構文に含まれているのが嫌い(エディタで再フォーマットできない)
2014/10/20(月) 07:07:45.12ID:vNvY5rmm
ある海外のファンタジー小説で、異世界召喚されたプログラマが魔法でFORTHを実装して
最強魔導師になってた。
最強魔導師になってた。
2014/10/20(月) 07:26:17.53ID:fcKonDPy
May the forth be with you.
2014/10/20(月) 11:16:47.94ID:6/LNQkyp
Lispは見た目的に「目にひっかからない」(関数もマクロもみんな同じようにしか見えない)のが問題なんだけど、
最近流行ってる(?)みたいに ( ) と [ ] を使い分けるとかすると、だいぶ感じが違うと思う。
最近流行ってる(?)みたいに ( ) と [ ] を使い分けるとかすると、だいぶ感じが違うと思う。
2014/10/20(月) 16:23:26.53ID:s/tFnXbk
2014/10/25(土) 10:10:07.27ID:9gGhLYaB
{} はすごくいいね。素の lisp だとほとんど使われない記号でもったいなかった。しかも数式とも合ってる。
ただ[] は好きになれないなぁ。個人的趣味だけど。
ただ[] は好きになれないなぁ。個人的趣味だけど。
2014/10/25(土) 13:15:04.28ID:rVCkRMh+
変わった趣味だw
2014/11/01(土) 16:34:43.21ID:5yNYNAVX
エラーメッセージを楽して、素晴らしく表示したいんですけど
いい方法を教えてください。
いい方法を教えてください。
2014/11/01(土) 18:28:37.68ID:yfMW+WpF
>>56
センスのいい奴に頼む
センスのいい奴に頼む
2014/11/01(土) 19:12:18.30ID:md1XyPQH
言うても行桁理由以外に何か必要かね
2014/11/01(土) 19:25:31.66ID:etXlBO/A
ファイル名…かな
2014/11/01(土) 20:57:55.11ID:68QCuiUg
エラー表示は?だけでいい
というネタがあったな
というネタがあったな
2014/11/02(日) 00:04:36.51ID:FPvqJpqA
人間が見てるのとコンパイラが解釈してるので大きくズレがある場合とか
エラーメッセージ見てわからんことが多々ある
xxの前にxxがあります/ありません系のエラーはウンザリ
エラーメッセージ見てわからんことが多々ある
xxの前にxxがあります/ありません系のエラーはウンザリ
2014/11/02(日) 00:22:55.85ID:E/aMB+tP
print " _人人 人人_ \n",
"> 突然の死 < ", col, ",", row, " in ",filename,":", reason, "\n",
"  ̄Y^Y^Y^Y ̄\n";
die;
楽して素晴らしい方向を考えた
"> 突然の死 < ", col, ",", row, " in ",filename,":", reason, "\n",
"  ̄Y^Y^Y^Y ̄\n";
die;
楽して素晴らしい方向を考えた
2014/11/02(日) 04:19:14.28ID:l3Xq9EsR
$ nmlc -run examples/lablgl/triangle.nml
Fatal error: exception Failure("
_人人 人人_
> 突然の死 < parse error line 33
 ̄Y^Y^Y^Y^Y ̄
")
って出るようにしてみた。
Fatal error: exception Failure("
_人人 人人_
> 突然の死 < parse error line 33
 ̄Y^Y^Y^Y^Y ̄
")
って出るようにしてみた。
2014/11/02(日) 07:10:13.81ID:Pf8ySLA3
何のエラーか
なぜ起こったか
どうすれば良いか
のうちどこまでエラー表示するか
表示しないものはマニュアルに書くか
統一しておくと良い
なぜ起こったか
どうすれば良いか
のうちどこまでエラー表示するか
表示しないものはマニュアルに書くか
統一しておくと良い
2014/11/02(日) 10:22:44.88ID:P2QTHoYV
何のエラーか数字で提示
あとはknowledge baseで
knowledge baseは迷宮
あとはknowledge baseで
knowledge baseは迷宮
レスを投稿する
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 【サッカー】日本代表MF 中村敬斗 ボリビア戦のスーパーゴールに「惚れるわ」「痺れる程のゴールこれでご飯何杯いけるのよ」 [阿弥陀ヶ峰★]
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 「クマはなるべく山に返す努力を」「クマと戦争は間違っている」動物保護活動家の主張 棲み分けと学習放獣でクマ被害なくなるのか?★7 [ぐれ★]
- アンケート調査で「高市発言は問題なし」 93.5%wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- 【悲報】大分市佐賀関の火事、20軒→170軒に延焼🔥 [481941988]
- 自閉症が「んなっしょい」と連呼するお🏡
- 日本人の海外旅行したきのマナーよくなったのはいつから
- へそグリグリ
- 結婚しないやつは異性は嫌いなの?
