[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 13:34 / Filesize : 188 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

「コンパイラ・スクリプトエンジン」相談室5



1 名前:デフォルトの名無しさん mailto:sage [05/01/19 19:06:04 ]
プログラミング言語処理系の開発に興味のある人達のスレッドです。

字句解析・構文解析から,データフロー解析,ループ並列化,タスク並列化,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン等各種最適化,
それにVM,GC,JIT,リンク時最適化,動的バイナリ変換などなど。
意味論に関する話題も歓迎です。

前スレ
1 pc.2ch.net/tech/kako/981/981672957.html
2 pc2.2ch.net/test/read.cgi/tech/1021136715/ (dat落ち)
3 pc5.2ch.net/test/read.cgi/tech/1070089173/
4 pc5.2ch.net/test/read.cgi/tech/1100097050/ (前スレ)
関連リンクは多分 >>2-10 あたり

560 名前:デフォルトの名無しさん mailto:sage [05/02/23 23:49:28 ]
>>556
もちろん知っている
bisonの教科書100回よめ、実装なんか簡単だ

561 名前:547 mailto:sage [05/02/23 23:57:27 ]
えと、あまり深く考えずに「教科書的」とか言っちゃったんだけど……。

字句解析と構文解析がなかよくしてフラグの洪水とか、
bisonがどういうオートマトン出力するか気にしながらトリッキーなコード書くとか
そういうことしなくてもパースできる、みたいな?
LALR(1)の教科書数回読んだだけで解析器作れるようなのを意図してました。

とりあえずCはダメという認識でいいと思います。

562 名前:デフォルトの名無しさん mailto:sage [05/02/23 23:59:42 ]
>>561
机上の空論ばかりやってるからそうなるんだよ、
実践してみろ、どうってことはないし、トリッキーでもないし
ましてやオートマトンなんか考える必要もない

563 名前:549 mailto:sage [05/02/24 09:24:27 ]
>>560
bisonの教科書に載ってるって言いたかったのね。
やっと分かったよ。

564 名前:デフォルトの名無しさん mailto:sage [05/02/24 10:37:59 ]
bisonとかそういう物以前に処理系作る人間にとっては初歩中の初歩かと

565 名前:デフォルトの名無しさん mailto:sage [05/02/24 14:46:58 ]
(゚∀゚)ラヴィ!!

566 名前:デフォルトの名無しさん mailto:sage [05/02/24 19:54:16 ]
>>561
lisp。実用言語だ。汎用ではないが。

567 名前:デフォルトの名無しさん [05/02/24 21:34:13 ]
>>566
実用性のない言語の典型例だなw


568 名前:デフォルトの名無しさん [05/02/24 21:36:13 ]
「なでしこ」のような言語をもし、lex/yacc でやるとしたら、
多量の yacc ルールが必要ですかね?




569 名前:デフォルトの名無しさん mailto:sage [05/02/24 21:43:23 ]
なでしこ知らないけど、
ああいうのはlex(相当)の方が難しいんじゃないかな。
分かち書きを強制とかしない限り。

570 名前:デフォルトの名無しさん mailto:sage [05/02/24 23:56:05 ]
>>567
実用性がある言語の典型だろ。

571 名前:デフォルトの名無しさん mailto:sage [05/02/25 00:39:39 ]
>>567
できない奴の典型だな。

572 名前:デフォルトの名無しさん mailto:sage [05/02/25 00:40:04 ]
自作じぇん

573 名前:デフォルトの名無しさん mailto:sage [05/02/25 00:43:01 ]
lispに実用性がないってどんだけ世界狭いに住んでるんだろう・・・。
schemeならまだ説得力があったがな。

574 名前:デフォルトの名無しさん mailto:sage [05/02/25 00:47:34 ]
嫌LISP厨が一人粘着してるだけです
ろくな反論もできない書き込みでわかります

575 名前:デフォルトの名無しさん mailto:sage [05/02/25 03:07:15 ]
Rubyが一番。

576 名前:デフォルトの名無しさん mailto:sage [05/02/25 05:21:01 ]
schemeもライブラリや処理系がないのが実用的に問題なだけで、
言語仕様としては良い。

577 名前:デフォルトの名無しさん mailto:sage [05/02/25 05:21:56 ]
Rubyが新湯ryてんで一番素晴らし魏、

578 名前:デフォルトの名無しさん [05/02/25 15:00:25 ]
>>569
識別子をちょっと凝って切り出すだけでしょ?(lex)
圧倒的に文法規則の方が難しいと思われるが?




579 名前:デフォルトの名無しさん mailto:sage [05/02/26 00:22:58 ]
字句解析と構文解析の難しさを単純に比べるなんてできないと思われるが?
やることちがうんだし。

しかしなでしこの構文ってそんなに複雑なんかね。
((式 助詞)* 動詞 句読点)* 程度かと思ってた。

580 名前:デフォルトの名無しさん [05/02/26 10:41:59 ]
XmlShemaの構文解析をしたいのですが、ハードの都合(200kしかメモリ占有不可)
上yaccすら乗せるのがきついため、XMLの字句解析から初めて構文解析を
しようと思うのですがyacc等使わない場合皆さんはどのようなスタイルで
書き始めますか?yacc漬けになっていて、スクラッチで字句解析構文解析
どうしようかすげー悩んでます。

581 名前:デフォルトの名無しさん mailto:sage [05/02/26 11:00:36 ]
昔は32kROM+32kRAMまたはそれ以下でBASICがエディタ付きで動いてたんだ
贅沢いっちゃいかん

582 名前:デフォルトの名無しさん mailto:sage [05/02/26 13:25:44 ]
XMLにyaccか、
なんとも不思議な使い方だね……
俺だったらスキャナは使ってもパーサは使わないな

ま、それはともかくフルスクラッチすればいいんじゃない、
速度さえ気にしなければXMLのパースは簡単だし、考える事なんか無いし。

583 名前:Rubyist! mailto:sage [05/02/26 18:04:39 ]
フルスクラッチって何ですかpu

584 名前:デフォルトの名無しさん mailto:sage [05/02/26 18:10:13 ]
フルチンみたいなものです

585 名前:デフォルトの名無しさん mailto:sage [05/02/26 19:26:01 ]
無の状態から全てを作り上げるフルスクラッチビルド
ttp://www5f.biglobe.ne.jp/~rebro/DSCF0042kuri].JPG


586 名前:デフォルトの名無しさん [05/02/27 00:34:22 ]
りんご農園でも、日本語の変数名が扱えるYO。


587 名前:デフォルトの名無しさん mailto:sage [05/02/27 19:49:20 ]
実際の所、最適化のほうがはるかに難しいと思われ。


588 名前:デフォルトの名無しさん mailto:sage [05/02/27 20:11:02 ]
>>587
その通り。



589 名前:デフォルトの名無しさん mailto:sage [05/02/27 21:21:34 ]
perlでさえインライン展開ぐらいやるよ

590 名前:デフォルトの名無しさん mailto:sage [05/02/28 00:22:39 ]
どのレスがどのレスに対する反応なのか、さっぱりわからんのは俺だけか?

591 名前:デフォルトの名無しさん mailto:sage [05/02/28 01:03:32 ]
藻前だけ

592 名前:デフォルトの名無しさん [05/02/28 23:08:34 ]
>>588
同意


593 名前:デフォルトの名無しさん mailto:sage [05/03/01 10:29:26 ]
>>590
今に始まったことじゃない。

594 名前:デフォルトの名無しさん mailto:sage [05/03/01 13:55:33 ]
中田センセイ (´・ω・`)

595 名前:デフォルトの名無しさん [05/03/01 22:31:34 ]
りんこのねーちゃんの本には、ケータイ画面の写真みたいたのがあったけど
(ry


596 名前:デフォルトの名無しさん mailto:sage [05/03/01 23:06:22 ]
>>595
いくらなんでもそれは略しすぎだろう

597 名前:デフォルトの名無しさん mailto:sage [05/03/02 02:53:21 ]
りn(ry

598 名前:595 mailto:sage [05/03/02 22:15:54 ]
…あれって、ねーちゃんの携帯かなぁ?




599 名前:デフォルトの名無しさん mailto:sage [05/03/02 22:29:04 ]
あほきたー

600 名前:デフォルトの名無しさん mailto:sage [05/03/03 12:24:26 ]
モレモナー

601 名前:デフォルトの名無しさん mailto:sage [05/03/03 14:45:44 ]
>>600
おまえもかよ!

602 名前:598 [05/03/03 21:35:10 ]
>>599
お前が一番の(ry


603 名前:デフォルトの名無しさん mailto:sage [05/03/03 21:44:13 ]
>>583->>602
この辺あぼーんしました。

604 名前:デフォルトの名無しさん mailto:sage [05/03/03 21:50:40 ]
>>583->>603
この辺あぼーんしました。


605 名前:デフォルトの名無しさん [05/03/04 18:57:57 ]
今日、電車乗ってたら、前にキモオタが二人乗ってきた。

なんか一人がデカイ声で「貴様は〜〜〜!!だから2ちゃんねるで馬鹿に
されるというのだ〜〜〜!!この〜〜〜!」
ともう片方の首を絞めました。
絞められた方は「ぐええぇーー!悪霊退散悪霊退散!!」と十字を切っていた。
割と絞められているらしく、顔がドンドンピンクになっていった。

渋谷でもう一人、仲間らしい奴が乗り込んできてその二人に声をかけた。
「お!忍者キッドさんとレオンさん!奇遇ですね!」 「おお!そういう君は****(聞き取れず。何かキュンポぽい名前)ではないか!
 敬礼!」
「敬礼!出た!敬礼出た!得意技!敬礼出た!敬礼!これ!敬礼出たよ〜〜!」
俺は限界だと思った。

606 名前:マイク ◆yrBrqfF1Ew mailto:sage [05/03/04 19:19:52 ]
限界も何も君の友達じゃないのか。

607 名前:デフォルトの名無しさん mailto:sage [05/03/04 21:19:26 ]
おまいら、しっかりしろ!スレ違いも甚だしいぞ!
もう一度>>1のテンプレ貼っておくぞ!


プログラミング言語処理系の開発に興味のある人達のスレッドです。

字句解析・構文解析から,データフロー解析,ループ並列化,タスク並列化,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン等各種最適化,
それにVM,GC,JIT,リンク時最適化,動的バイナリ変換などなど。
意味論に関する話題も歓迎です。

608 名前:デフォルトの名無しさん mailto:sage [05/03/05 13:50:23 ]
やこしい内容にするからかえってチョッカイ出しただけの困ったちゃんが湧いてくるような気がする。
次スレはシンプルに初代の1の内容
「yaccやlexの使い方やら言語仕様やらの話題。 」
に戻すかね、周辺の話題はスレの流れで勝手に入ってくるに任せる感じで。



609 名前:デフォルトの名無しさん mailto:sage [05/03/05 14:21:35 ]
サンデープログラマが初めて勉強するべきコンパイラコンパイラは何かについて
英語とOOP はアリ

610 名前:デフォルトの名無しさん mailto:sage [05/03/05 14:25:38 ]
↑日本語でおながいします

611 名前:デフォルトの名無しさん mailto:sage [05/03/05 19:26:03 ]
オブジェクト指向プログラミング(OOP: Object Oriented Programming)

612 名前:デフォルトの名無しさん mailto:sage [05/03/05 19:29:45 ]
>>610
諦めろ。>>609は日本語を理解してないぞ。


613 名前:デフォルトの名無しさん [05/03/05 23:28:51 ]
LISP と OOP 程、やくにたたんものはない。


614 名前:デフォルトの名無しさん mailto:sage [05/03/05 23:37:14 ]
と、世間で役立たずの613は語った。

615 名前:デフォルトの名無しさん mailto:sage [05/03/07 10:04:09 ]
>>608
構文解析およびyacc,lexx のスレ と
>>1の内容みたいなスレを分けた方がいいんじゃないの?

616 名前:デフォルトの名無しさん mailto:sage [05/03/07 10:09:19 ]
わけるほどのモノじゃねえよ

617 名前:デフォルトの名無しさん mailto:sage [05/03/07 10:36:04 ]
>>616
最適化の話は一つ一つが長くなるとは思うが今まで一度も出てきてない気がするの俺だけ?


618 名前:デフォルトの名無しさん mailto:sage [05/03/07 11:05:53 ]
出てきてから考えれば?



619 名前:デフォルトの名無しさん mailto:sage [05/03/07 12:43:32 ]
>>615
被りまくりの上に、それほどの話題は存在しない、そんな必要はない
ただでさえ人口が少ない上、部外者だらけのこのスレをこれ以上薄めてどうする。

620 名前:デフォルトの名無しさん mailto:sage [05/03/07 13:48:33 ]
インライン展開の話がしたい

621 名前:デフォルトの名無しさん mailto:sage [05/03/07 22:53:01 ]
>>620
インライン展開の話をすることを許可する。

さぁ、存分にやりたまえ。

622 名前:デフォルトの名無しさん mailto:sage [05/03/07 23:17:52 ]
>>620
インライン展開ってさ、キャッシュの容量が小さすぎるCPUで泣いたことない?

組み込み系やってないとわからないかもしれん(つかイマドキのPCってすごすぎ)

623 名前:デフォルトの名無しさん mailto:sage [05/03/08 11:06:18 ]
>>620
どうぞどうぞ、ガンガン書いちゃって下さい

624 名前:デフォルトの名無しさん mailto:sage [05/03/08 15:14:38 ]
俺は彼女の陰ラインを展開し
その淫乱な姿に欲情した
こんなに濡れてるよ体は正直だね(ry

625 名前:デフォルトの名無しさん mailto:sage [05/03/08 20:06:10 ]
ロバート・A・はインライン展開した幼年期の終夏への扉

     ・A・ イクナイ

626 名前:デフォルトの名無しさん [05/03/09 23:48:53 ]
りんご展開


627 名前:デフォルトの名無しさん mailto:sage [05/03/10 00:22:07 ]
インライン展開の話に戻しますが、
単純に展開しただけでは、

inline f(int x) { return x; }
g(int y) { return f(y) + f(y); }

↓展開

g(y) {
 int x1 = y; // f(y)
 int x1r = x1; // return x
 int x2 = y; // f(y)
 int x2r = x2; // return x
 return x1r + x2r;
}

こんな感じになって変数がいくつも必要になる気がします。
上の展開結果から
g(y) {
 return y + y;
}
を導き出すには、フロー解析しないとダメでしょうか?
または別に何か簡単な方法があるでしょうか。

628 名前:デフォルトの名無しさん mailto:sage [05/03/10 02:32:35 ]
不要コード除去くらいするもんだと思うが。



629 名前:デフォルトの名無しさん mailto:sage [05/03/10 05:38:27 ]
え、全て必要な気がするけど。


630 名前:デフォルトの名無しさん mailto:sage [05/03/10 23:09:55 ]
普通の最適化をさぼっているくせに、インライン展開なんかしたら
大抵は性能劣化を招く罠。

631 名前:デフォルトの名無しさん mailto:sage [05/03/11 00:37:34 ]
先読みしたデータを元に戻す時なんか工夫してる?

632 名前:デフォルトの名無しさん mailto:sage [05/03/11 00:55:38 ]
>>631
スマンが文脈からパース時の話なのか実行時プリフェッチの話なのかワカランのでもう少しフォローしてくれ。


633 名前:デフォルトの名無しさん mailto:sage [05/03/11 01:14:26 ]
気になるのは、文脈からパースしたときです。

634 名前:デフォルトの名無しさん mailto:sage [05/03/11 02:59:38 ]
1個分のバッファを作っておいていつも先読み。戻さない。
ってのが統一的でいいんじゃないかしらん。

ていうかなぜパーサを手で書かなきゃいかんのかと小一時間(ry


635 名前:デフォルトの名無しさん [05/03/11 21:49:00 ]
りんこ1個分、先読みすればよいよ。


636 名前:デフォルトの名無しさん [05/03/11 22:46:59 ]
HTMLからTeXファイルを作りたいのですが、そこらへんのノウハウが載っているサイトってありませんか?

637 名前:デフォルトの名無しさん mailto:sage [05/03/12 00:40:12 ]
えーとパーサー生成器で作ると遅いよ?
Boost関数で作るほうがすげー早いよ?
あとメインメモリ500kぐらいの環境だとそんな荷物もてないよ?

638 名前:デフォルトの名無しさん mailto:sage [05/03/12 08:56:58 ]
メインメモリ500k位の環境じゃ他のリッチな環境から
クロスコンパイルするのが普通だわな



639 名前:デフォルトの名無しさん [05/03/12 11:30:03 ]
>>638
メインメモリ1M位のリッチな環境ならありますがクロスコンパイルは普通に出来ますか?

640 名前:デフォルトの名無しさん mailto:sage [05/03/12 11:55:35 ]
>>639
5万円くらいでメインメモリ512MBのx86マシンを自作して出直して下さい。

641 名前:デフォルトの名無しさん mailto:sage [05/03/12 11:56:54 ]
あの……落としものですよ?

         ∧__,,∧
        (´・ω・`)
         (つ夢と)
         `u―u´

  あなたのすぐ後ろに落ちていましたよ?

642 名前:デフォルトの名無しさん [05/03/12 12:43:48 ]
誰がネタを言ってるのかよくわからんが、
メインメモリ1Mぐらいの組み込み機器で
小さいスクリプト言語が動けば便利かも試練

643 名前:デフォルトの名無しさん mailto:sage [05/03/12 12:47:47 ]
メインメモリ1Mぐらいの組み込み機器なんて
入力装置がボタン数個だろうから、
スクリプト言語なんてあっても書けないぽ。

644 名前:デフォルトの名無しさん mailto:sage [05/03/12 22:53:26 ]
>>643
スタンドアローン開発する気?

645 名前:デフォルトの名無しさん mailto:sage [05/03/13 00:00:58 ]
ユーザーがスクリプト書くって事じゃないの?
そうじゃなければスクリプトである必要がないし。

646 名前:デフォルトの名無しさん mailto:sage [05/03/13 12:05:29 ]
スクリプト言語の利点はユーザが書けることだけじゃないよ。。

647 名前:デフォルトの名無しさん mailto:sage [05/03/13 12:21:09 ]
そう言いながら他の利点を書かない厨646

648 名前:デフォルトの名無しさん mailto:sage [05/03/13 12:41:33 ]
一から十まで教えられないとわからないか。
よく最大の利点と言われるのは手軽にプログラムが書けること。
ポータビリティが高いことも多い。

プログラマが自分のために書くプログラムは全部C言語とかですか?



649 名前:デフォルトの名無しさん mailto:sage [05/03/13 13:44:46 ]
>>642からの流れは「メインメモリ1Mぐらいの組み込み機器」での話ではないのか?
646や648よ。

650 名前:デフォルトの名無しさん mailto:sage [05/03/13 14:21:41 ]
>>648
教えられなくても分かるというやつは
天才か電波

651 名前:デフォルトの名無しさん mailto:sage [05/03/13 14:26:43 ]
>>642
少なくとも京ぽんのbookmarkletは激しく便利。

652 名前:デフォルトの名無しさん mailto:sage [05/03/13 14:28:04 ]
自ら学ぶ事もしないのか
ゆとり教育だな

653 名前:デフォルトの名無しさん mailto:sage [05/03/13 15:21:31 ]
>>649
>>646=>>648=俺だが、
「メインメモリ1Mぐらいの組み込み機器」では
手軽に書けることやポータビリティに意味はないと?

654 名前:デフォルトの名無しさん mailto:sage [05/03/13 15:57:56 ]
「メインメモリ1Mぐらいの組み込み機器にスクリプト言語あれば便利だなあ」
 「入力デバイスがなくてスクリプト書けねぇよ」
  「スタンドアロンで開発するわけがありません」
   「えーできないのー?ユーザが使えなきゃ意味ないじゃん」
    「んなこたない」
     「利点を具体的にいってみろよー」
    「手軽さとポータビリティだろが馬鹿そんくらい分かれ」
     「言われる前に分かったらエスパーだっつーの」
      「手前でしらべろボケ」
     「特にメモリ1M組み込み機器に限った話じゃないだろ」
      「組み込み機器にあれば便利だなあって話だ」←いまここ

結論は最初の一行。

655 名前:デフォルトの名無しさん mailto:sage [05/03/13 16:16:28 ]
では、結論。
>メインメモリ1Mぐらいの組み込み機器にスクリプト言語あれば便利だなあ
クレクレ君はスレ違いです。


656 名前:デフォルトの名無しさん mailto:sage [05/03/13 16:21:42 ]
1MもあればCコンパイラでも作れそうだが

657 名前:デフォルトの名無しさん mailto:sage [05/03/13 16:43:01 ]
>>656
その 1MB を全部コンパイラ関係(中間ファイル置き場も含む)に使ったら、
組み込み機器の本業が動かんでしょ。

658 名前:デフォルトの名無しさん mailto:sage [05/03/13 17:03:40 ]
>>656-657
640Kbyteで全部動いた時代が懐かしいな、まあどうでもいいが雑談はマ板でやったらどうだい?



659 名前:デフォルトの名無しさん mailto:sage [05/03/13 17:51:23 ]
組み込み機器にスクリプト言語実装する手間考えたら
ポータビリティの意味無いじゃん。

660 名前:デフォルトの名無しさん mailto:sage [05/03/13 18:14:52 ]
そこでLisp






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<188KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef