1 名前:デフォルトの名無しさん [2007/09/02(日) 08:13:36 ] プログラミング言語処理系の開発に興味のある人達のスレッドです。 字句解析・構文解析から,データフロー解析,ループ並列化,データ分散,SSA変換, CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン, SIMD命令生成,VLIW向けクラスタリング,スクラッチメモリ向け最適化,リンク時最適化, JIT,動的バイナリ変換等の各種最適化,それにVM,GC,低消費電力化などなど。 意味論に関する話題も歓迎です。 過去スレ 1 pc.2ch.net/tech/kako/981/981672957.html 2 pc2.2ch.net/test/read.cgi/tech/1021136715/ 3 pc5.2ch.net/test/read.cgi/tech/1070089173/ 4 pc5.2ch.net/test/read.cgi/tech/1100097050/ 5 pc8.2ch.net/test/read.cgi/tech/1106129164/ 6 pc8.2ch.net/test/read.cgi/tech/1115335709/ 7 pc8.2ch.net/test/read.cgi/tech/1129287390/ 8 pc8.2ch.net/test/read.cgi/tech/1131273918/ 9 pc8.2ch.net/test/read.cgi/tech/1135082582/ 10 pc8.2ch.net/test/read.cgi/tech/1146844753/ 11 pc11.2ch.net/test/read.cgi/tech/1160879890/ 関連リンクは多分 >>2-10 あたり
210 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 11:44:05 ] 趣味で(ほぼ無意味ですが)C++とほぼ同等のコンパイラを作っています。 当然テンプレートとかはないですが、文法がそっくりという意味です。 質問なのですがC++は何故、クラスの定義がファイルの行数的に先に行なわれていないとコンパイルエラーになるのでしょうか? 例えば CHoge test; class CHoge { }; こういう順番だと、CHogeって何?未定義なんだけど。ってエラーになりますよね。 ファイルの上から処理して言ってるのだから当たり前なのは分かってます。 ですが先に class などの定義系を先に処理してからにすれば回避できる問題かと思います。 「先に全ファイルをチェックして定義系を処理してから、再度全ファイルを処理する」 という2度処理が、C++が生まれたころのマシンスペックではもったいなかったのでしょうか?
211 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 11:53:55 ] 過去の名残。
212 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 12:09:17 ] >>210 Cのstructの仕様をそのまま引き継いでるだけかと。 C++というよりは、Cが生まれたころのマシンスペックだろう。
213 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 13:02:39 ] >>211-212 なるほど、ありがとうございました。 無理にそこを真似する必要はなさそうですね
214 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 14:39:58 ] 最初のC++コンパイラはCへのトランスレータだったような気がする。(SS1の頃でメモリも16M位が標準だった)
215 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 14:55:16 ] ttp://en.wikipedia.org/wiki/Cfront
216 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:35:10 ] 質問 Javaっぽい言語でスクリプト作ってたんですが、数値型に何も考えずに int, short, byte, long をつくったんですよ でもおかげでかなりVMやコンパイラの仕組みが複雑になってしまってコマってます 正直、shortとかbyteってみなさん使ってます? (メモリーをケチる目的以外で) バイナリファイルを解析する時とかはさすがにbyte単位で扱えなければ話にならないと思いますけど ByteArrayStreamみたいなものがあればそれでいいかなぁとか考えてるのですが…
217 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:42:31 ] Javaっぽいって…
218 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:47:14 ] >>217 すごい誤解招きそうな文章でしたね Javaっぽい文法でスクリプトを作ってたんですが〜としてください
219 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 17:16:56 ] byteやshortも過去の遺産じゃね? よっぽどメモリーがきつい環境で無い限り、演算もintのほうが速いわけでもあるしint使うわ
220 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 17:32:05 ] あるいは、メモリに常駐するデータ量が2Gか4Gかという差があるとかな
221 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 17:35:56 ] 確かにそれくらいメモリーの差が出るなら考えるなw まぁそれもByteArrayStream?があればそっちでいいわけで Javaのものだと仮定すれば、あれランダムシークもできるし(Byte型の配列とほぼ同義として扱える)
222 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 17:56:28 ] >>216 JavaVMも配列とかフィールドにはbyteやshortがあるけど、スタック中ではint扱いっすよ いちいち丸め処理が入るだけで long, float, double や参照は別扱いだけど
223 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 20:25:44 ] C でも汎整数拡張とかあって、 式中では勝手に int に格上げされるな。
224 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 22:23:46 ] でも、エンジニアリングモデルでは普通に使ってるよ。
225 名前:jonigata mailto:sage [2008/02/16(土) 12:32:02 ] 先週末にバージョンアップするとかいっときながら遅れましたが caperバージョンアップしました。 tinyurl.com/yefoxa 例によってうまく動かなかったらごめんなさい。 C#ジェネレータとか一応組み込んだけど 普段使わない言語でぜんぜん要領を得ないので 詳しい人がいたらここかブログ( d.hatena.ne.jp/jonigata/ )に なにかアドバイス等いただけるとうれしいです。
226 名前:デフォルトの名無しさん [2008/02/21(木) 23:44:59 ] 場違いかも知れませんが、宜しくお願いします。yacc/lexはc言語での 作りですが、perl言語で同様の処理をしたいのですが、処理系はあるの でしょうか? 以前は、随分と前に見た事はあるのですが、最近は見かけなくなりまし た。知っている方、どうかそのインストール方法...等アドバイス宜 しくお願いします。
227 名前:デフォルトの名無しさん mailto:sage [2008/02/21(木) 23:56:50 ] Racc
228 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 09:04:34 ] kmyacc
229 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 08:45:05 ] 構文解析のアルゴリズムが沢山載っている「Parsing Techniques - Second Edition」 www.cs.vu.nl/~dick/PT2Ed.html
230 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 09:20:44 ] >>27 >>37 LLVMはMac OS XのOpenGLスタックで使われてるよ。 PyPyもターゲットの一つにしてる。 llvm.org/Users.html
231 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 01:53:45 ] gnu makeのBNFとかってありますかね?
232 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 14:32:59 ] やはり新しい言語の方が優れてるのですか?
233 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 14:42:55 ] 兄より優秀な弟などいない
234 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 15:05:15 ] >>233 イギリス皇室の方ですか?
235 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 17:16:19 ] >>233 ラオウ乙
236 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 17:48:49 ] >>235 ジャギでは
237 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 18:32:44 ] >>231 GNU Make のソースツリーの中に無いの? 知らないけど。
238 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 22:05:11 ] Lisp 最高〜!
239 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 18:03:56 ] そういえば、昔どこかのサイト(海外)で、 プログラミング言語の上下関係を図式化したものがあった。 そこでは確かに Lisp が一番上位に来ていたような… 何がいいのかさっぱりわからんがw
240 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 08:26:38 ] >>239 原文を見てない範囲での推測だが、 S式という情報の取扱形式が 全ての上位に来ると言う意味なら判らなくもない。 ただそういう比較は扱う人の主観でしか有り得ない。
241 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 13:19:49 ] ここにそれっぽいのがあるね ttp://www.geekpage.jp/blog/?id=2006/12/13
242 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 16:18:53 ] Adaのマルチタスクプログラミング舐めてるのか!
243 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 17:29:15 ] Lisp - C の連結はありえない
244 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 18:16:28 ] >>241 これは面白いな。 ところで、最近のマクロという名のプログラムはどこに?
245 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 18:23:52 ] 面白くないぞw
246 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 06:10:35 ] >>241 部分部分を見るとアレだけど、大まかな流れは頷けなくもない。 LanguagesではなくProgrammersを扱った図だからね。言語の宗教論争とはちょっと事情が違う。 「上位」プログラマは、多くの場合「下位」プログラマ"でもある"(その言語を使える)か、 あるいは"すぐにそうなれる"(パラダイムを十分把握していて、表面の違いを学ぶだけでいい)状態にある。 きっちり成立しているとは言わないけど、少なくとも、同じ事を上下逆に考えるよりは成立している。 だから全体を、あくまで曖昧なレベルで、クラス図の比喩として見ることができるんじゃないかと。 別の言い方をするなら、この図は、 「あなたが言語Xと言語Yを使えて、どちらかの言語名+プログラマ、でしか自称してはいけないと言われたら、 どちらを口にすれば、自分のスキルや経験値をよりあますことなく示唆できるだろうか?」 っていう「ソート」の結果であり、実際、まんざらデタラメな結果ではないと思う。 LispとCが使える人だったら、この図の「Lispプログラマ」に自分を置くし、たぶんそれで正解だろう。 逆を自称するよりは、その人の経験してきたことの「より多く」を伝えられると思う。たぶん。
247 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 07:11:51 ] > クラス図の比喩として見ることができるんじゃないかと。 そんな必要はないだろ。 その見方から何が得られたかも書いてないし。 クラス図言いたいだけと違うんかと
248 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 07:30:39 ] >>247 よくわからん返しだな。
249 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 09:06:36 ] ジョークにマジレスしてる>>246 もよくわからんのだが…
250 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 09:23:52 ] >>249 ジョークがまんざらでもないことを面白がってるんだよ。
251 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 13:37:47 ] 「そうそうあるある」ってのが笑いどころのネタだしな
252 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 14:59:48 ] まんざらでもないからこそジョークとして成立してるところに 「いやこのジョークはまんざらでもないんだよ!」と解説しちゃうところが無粋すぎ。 ってかスレ違いすぎだな…
253 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 19:01:19 ] そうとも思わないが?スレチ なかなかおもしろいと思う。
254 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 21:27:09 ] 使用者のヒエラルキーなんてマ板の範疇だろ・・・ スレ違いどころか板違いだ
255 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 22:36:37 ] 糞つまらなねえ >>241
256 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 05:34:52 ] まぁ、自分が悪く言われているジョークが面白くないのは自然だ。
257 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 13:23:29 ] >>241 の元ねたの最下位カーストだけ妙に具体的なのは おもしろかったw
258 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 00:33:28 ] お気に入り言語が下にあるからって、そんなにカリカリせんでもw
259 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 00:43:41 ] 出来が悪いのはともかく、 言語の階層じゃなくて、 プログラマーの階層なんだぜ?
260 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 01:24:06 ] 古臭いネタまだひっぱるのか?
261 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 09:59:11 ] 約一名のこのネタの腐しかたが特徴的すぎるんだが、何がそんなに気に入らないんだろw
262 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 20:03:53 ] 誰のこと?
263 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 20:59:41 ] 野村君のことだよ
264 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 19:07:54 ] 鈴木君は?
265 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 20:31:18 ] 鈴木君は良い奴だよ。 先週、尻にタイ焼きを詰まらせて亡くなったけど。
266 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 19:26:54 ] 田中くんは?
267 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 23:18:15 ] 山田さんは?
268 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 14:48:16 ] おーい
269 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 21:19:35 ] 中村くん
270 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 16:30:45 ] なんだい?
271 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 19:07:31 ] ちょいと待ちたまえ
272 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 19:41:25 ] >>270-271 が>>268-269 と世代が違う件について
273 名前:デフォルトの名無しさん [2008/04/07(月) 12:00:22 ] >>272 オハヨー!! ∧∧ ∩ (`・ω・)/ ⊂ ノ (つノ (ノ ___/(___ / (___/  ̄ ̄ ̄ ̄ ̄ ̄
274 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 10:09:21 ] スクリプトの概要 - Tactico www.lagarto.co.jp/tactico/script.html 定評ある投資ツールOmegaチャートの作者が開発している、次期投資ツール「Tactico」に搭載されているスクリプト言語の解説。 関数型言語のにおい
275 名前:デフォルトの名無しさん mailto:age [2008/04/20(日) 15:48:01 ] あげてもいいですか?
276 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 16:03:12 ] いいけど、またLISPネタになるだけだよ?
277 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:25:38 ] >>275 既にあげてんじゃねぇかYo!
278 名前:デフォルトの名無しさん [2008/04/23(水) 22:42:00 ] 本のサンプルで利用されているANTLRをお勉強中。 今までこういったものを触ったことが無いので枠枠してる。
279 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:47:58 ] SquirrelとXtalのソース見て勉強中 頭では分かっていても、実際にコードへ落とすときに悩んでしまう
280 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 19:30:01 ] プログラムの最適化方法、特にベクトルプロセッシングの最適化について知りたいのですが、 どこか参考になるサイトはありませんか? よろしくお願いします。
281 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 19:34:58 ] つ『コンパイラの構成と最適化』
282 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 20:20:15 ] 了解しました。ありがとうございます。
283 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:33:06 ] 髭を伸ばそうかと思っているんだけど、おまえら髭どうしてる?
284 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 03:58:14 ] 剃ってる
285 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 06:13:41 ] これか スラッシュドット・ジャパン | 髭がある程プログラミング言語は繁栄する? slashdot.jp/developers/08/04/30/0830201.shtml
286 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 07:43:06 ] 髭はバリカンで刈ってる。 別に髭専用バリカンてわけでもない。
287 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 12:12:15 ] 年単位で前に読んだ記憶があるネタだな
288 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 05:41:41 ] 俺はひげ専用バリカン持ってるよ。 長さを自在に調整できるやつ。 ただ今使っているのは電池専用なので使いにくい
289 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 22:25:36 ] 型名と変数名を名前システムの観点から考察した 議論ってなんかある?
290 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 21:01:37 ] いきなりどうした、頭大丈夫か?
291 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 21:13:52 ] 静的型って、型名と変数名とスコープを結びつけるわけじゃん。 抽象データ型って、変数名とスコープを介して 型名とプロシージャ名を結びつけるわけじゃん。 こういうのを名前システムとして眺めたら、 なんか見えてこねえ?
292 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 22:02:18 ] なにが言いたいのかわからん マヨイガでも見えてんのか
293 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 23:29:35 ] 今 >>289 の脳内で画期的な理論が生まれようとしている! のかもしれない…?
294 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 13:32:22 ] ただの型推論なんじゃない?
295 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 18:13:03 ] GUIクラスライブラリのBoxクラスを想定。 Boxクラスには、x, y, width, heightというフィールドがある。 xとyのあいだ、widthとheightの四則演算は原理的に 禁止。書けてしまう&実行できるのは、言語が 行き届いてない証拠。 言語レベルで禁止するには、x, y, width, heightを それぞれ別の型にしてしまえばいい。 でもそうすると、Xクラスのフィールド名はx、Yクラスの フィールド名はy、てなことになるわけだ。 これって間抜けじゃね? 型名と変数名を名前システムの観点から考え直せば、 こういう間抜けなことの起こらない方法が見つかるかも しれない、ってこと。
296 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 18:38:40 ] キログラムとセンチメートルといった単位の違うものを足したりできなくしようというわけか? 興味深いけど、なんか面倒臭そうな気がする
297 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 19:01:53 ] 過度な形式化は無用な世話だ
298 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 19:07:28 ] >>295 間抜けでもいいなら、不正な操作を禁止することは既にできるわけだろ 冗長だから短く書きたいというなら型システムの問題ではない Lispのマクロのようなものがあればいい
299 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 21:01:59 ] >>298 一概にそうは言い切れないだろ 略記法を展開する過程が型情報に依存するなら、単にマクロで構文を導入するのでは済まない
300 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 22:32:46 ] >>296 カロリー換算することで、燃費というプロキシは必要になるが計算は可能だな ガチガチに縛るのもどうなのかなぁと思うのだが 俺の視点はずれてるのだろう
301 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 23:43:33 ] >>299 たとえばCのsizeofは型情報がないと計算できないが、 逆に言えばsizeofのような演算子を必要な分だけ追加すれば済むってことか?
302 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 00:28:51 ] 新機能を追加しないと展開できない略記法? ハードル上げ過ぎ
303 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 01:18:46 ] マクロ云々みたいな実装レベルの話じゃなくて、継承とかみたいな概念レベルの話をしているのでは? 型の拡張というよりも、むしろ単位という新しい概念の導入に近い気がする。 整数型とか実数型とかはそのまま受け継いで、それとは独立に演算の制約情報を付加する、って感じで。 物理とかのペーパーだとよく単位つけたまま式に代入したりするけど、それをPCで実現させるような。 俺言語での超適当な例。 unit : Volt, Ampere; // 電圧・電流の単位を定義 unit : Watt = Volt * Ampere; // 電力と電圧・電流の関係を定義 variable Integer [Volt] : vol; // 整数型(単位ボルト)の変数volを宣言 variable Integer [Ampere] : amp; // 同様 variable Integer [Watt] : wat; // 同様 variable Integer [Volt * Ampere] : wat2; // これもアリか。Wattと同じ。 variable Integer : num; // もちろんただの整数型も宣言可能 vol = amp; // ERR wat = vol * amp; // OK wat = vol + amp; // ERR vol = wat / amp; // OK vol = vol * num; // OK vol = vol + num; // ERR
304 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 03:44:39 ] variable Integer : num; // もちろんただの整数型も宣言可能 こればっかり使って全て台無しって事にならんかなぁ? unit : Ohm; unit : Volt= Ampere * Ohm; とかせんといかんの?
305 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 03:57:54 ] アプリケーションハンガリアンを思い出したぜ local.joelonsoftware.com/mediawiki/index.php/%E9%96%93%E9%81%95%E3%81%A3%E3%81%9F%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AF%E9%96%93%E9%81%95%E3%81%A3%E3%81%A6%E8%A6%8B%E3%81%88%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B 要は言語レベルでこれをやろうぜって話なんだろ?
306 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 05:00:56 ] >>295 >>303 Boost C++ ライブラリに昔あったなあそれ。 今ではなくなっちゃってるっぽいけど。 変数に次元を割り当てて、異なる次元の変数同士の加算減算をしたり、 次元を無視した代入を行おうとすると、コンパイルエラーを吐いてくれるやつ。
307 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 05:59:41 ] 情処のプログラム研究会あたりでネタにな・・・らなさそうだな
308 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 07:43:52 ] ならないな。こんなのとっくの昔からある話題だし。 言語レベルでやるようなもんじゃない。
309 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 11:40:27 ] ハンガリアンなんて便法じゃなくて、型で強制すべき、ということでしょ。 それを支援する言語というテーマは、まんま同じものが過去になければ、 研究会発表ぐらいならいけるんでない?
310 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 11:41:21 ] 強い typedef でおkだろ。
311 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 12:39:04 ] >>303 よくわからんがこんな言語のこと? ttp://futureboy.us/frinkdocs/
312 名前:デフォルトの名無しさん [2008/05/10(土) 14:27:11 ] LLバトロワスレにはっちゃったけど、いちおうここにも JRuby開発者のOla Bini氏がJVM上で動作するプログラミング言語「ioke」を開発中 groups.google.com/group/jvm-languages/browse_frm/thread/2254d1d67bda9813
313 名前:デフォルトの名無しさん mailto:sage [2008/05/10(土) 18:04:32 ] 具体的な機能に飛びつく前に、こういう問題を概念レベルで 上から俯瞰できるような観点はないか、そこが知りたい。 数学基礎論だと、群だの体だの圏だので俯瞰するわけだ。 そういう観点があって初めて、5次以上の解の方程式が 存在しないことがわかる。 なにをどう構成して名づけるか? 変数名・型名・スコープは 構成の仕方の一例にすぎないわけよ。 演算子と構文にいろんなやりかたがあるように、名前システムにも いろんなやりかたがあるはず。多分。 そのいろんなやりかたってのを、「あれを思いついた」 「これを思いついた」ではアドホックだから、名前システム という観点が欲しい。
314 名前:デフォルトの名無しさん [2008/05/11(日) 00:19:43 ] >>283 レーザー脱毛した。 もともとそんなに濃くなかったけど朝がなんとなく楽になった。 他の脱毛よりましらしいがレーザーもすんげー痛い。
315 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 01:06:02 ] >>314 痛いのか、知って良かった。 朝剃っても夕方泥棒みたいになるんだ。
316 名前:デフォルトの名無しさん [2008/05/14(水) 15:51:01 ] 質問。 εって一つ先読みして即還元すればいい?
317 名前:デフォルトの名無しさん [2008/05/16(金) 07:20:07 ] 「はじめてのコンパイラ - 原理と実践」って書かれてることに間違いないですよね? 正順LRって単語でググってもあまりヒットしないので不安なんだけど。
318 名前:デフォルトの名無しさん [2008/05/16(金) 07:44:02 ] 普通 正準LRっていわんか? canonicalの訳だろ?
319 名前:デフォルトの名無しさん [2008/05/16(金) 07:50:18 ] >>318 ってことは、正順と書いてあるこの本は駄目本ってことですか? ドラゴンブックは暗号が多すぎて解読が難しかったので、この本を 無条件に信頼できると良いのですが。
320 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 08:11:15 ] 無条件に信頼って物を学ぶ態度じゃないだろw とりあえず仮に教科書を信頼して勉強をすすめる 知識が付いてきたら別の情報源との突き合わせも難なくできるようになるだろうから、 間違ったことを覚えていたらそのときに訂正すればいい もちろん間違いの多い教科書を避けられるならそれが良いけどな
321 名前:デフォルトの名無しさん [2008/05/16(金) 08:24:02 ] >>320 この本を読んだことあるのですか?
322 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 08:38:39 ] ないよ
323 名前:デフォルトの名無しさん [2008/05/16(金) 08:45:33 ] >>322 やさしいJavaは?
324 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 08:49:29 ] >>317 スタータキットとして割りきって使えよ。 「原理と実践」でそんな薄い本。 甘えすぎ。
325 名前:デフォルトの名無しさん [2008/05/16(金) 08:56:58 ] >>324 平易な言葉で書かれた素晴らしい本だと思うんですがね。 内容が正しければ良書なのですが。 ドラゴンブックマンセーしてるやつは3の倍数。
326 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:17:49 ] 順は"順当"の順だから間違いってほどではないだろ。 いずれにせよ、どうでもいいことだろ。 そんな短い本で終わることはあり得ないんだから。
327 名前:デフォルトの名無しさん [2008/05/16(金) 09:25:01 ] >>326 この本に含まれていなくて且一般に重要なトピックは何ですか? こんな短い本・・・とおっしゃるくらいだからいくらでも挙げることが できるんですよね? それともあなた何も理解せずに適当な単語を並べてるただの3の倍数ですか?
328 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:31:11 ] そのくらい自分で調べろよ。 本じゃなくて、お前の勉学の態度が悪いんだよ。
329 名前:デフォルトの名無しさん [2008/05/16(金) 09:32:53 ] >>328 結局のところ全く理解していないので一つも挙げることが出来ないのでは?
330 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:33:23 ] 情報が足りるか足りないかなんか 実装してみたらわかると思うけど それ以前に実装しようと思うだけでわかるかもね
331 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:33:59 ] 情報引き出すための煽りか
332 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:35:12 ] >>330 それだと実装手法は一つしか学ばないでいいって態度だね。
333 名前:デフォルトの名無しさん [2008/05/16(金) 09:38:42 ] >>331 引き出す情報を持っているかどうかが問題。 たぶん持ってないな。
334 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:47:43 ] 仮にそうだとして それを指摘して 誰になんの得があるというのか 勝利宣言するならその本読んで 実装する必要があるし 自分の立場がわかってなさそうだな
335 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:52:41 ] >>334 もうやめれ。 傍目に見てお前の無知はばれてる。 ややこしくなるからわからないならレスするな。
336 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 09:58:01 ] IDの無い板でそれを言っても何の説得力もないけどな
337 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 11:01:48 ] 知らないならレスしないでください の変形かw
338 名前:デフォルトの名無しさん [2008/05/16(金) 11:44:13 ] 知らないのにレスするとはなんとおこがましいのでしょう。
339 名前:デフォルトの名無しさん [2008/05/16(金) 12:44:48 ] お前ら楽しそうだな。 チャットばかりしてないで、スレタイに沿った話しろよ。
340 名前:デフォルトの名無しさん [2008/05/16(金) 12:56:36 ] やさしい構文解析はいつ出版されるのか。
341 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 06:49:26 ] 構文解析をコードで理解するよりも、まだやることは多い気がする。 状態遷移図を書きまっくて、 NFA からε遷移が無くなるように DFA する辺りとか。 オートマトンを追いかけてのスキャンを考えて、 例外処理までもを備えた形にはどうなるのかとか。 一見動いて見えるコードを下手に書いてしまうと、後が大変になる。 思考実験で状況を追いかける位にはなれたらなー、とは思った。独感だけど。
342 名前:デフォルトの名無しさん [2008/05/18(日) 21:26:16 ] >一見動いて見えるコードを下手に書いてしまうと、後が大変になる。 そうか? それこそが、ITで必要なことだと思うが、 あっ、研究は別ね。
343 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 21:40:43 ] >>341 まずその変な日本語を直してからだな
344 名前:デフォルトの名無しさん [2008/05/19(月) 09:48:43 ] COBOLのコンパイラを探してるんだけど、何か無いかな? 条件としては フリーで独自の例外表記が無くて 外部テキストファイルの読み込みが可能 ソースと実行結果をテキストで出力が可能な奴を探してるんだ。 ずっと探してるんだけど実効結果をテキストで出力可能な奴が見当たらないorz
345 名前:344 [2008/05/19(月) 11:27:19 ] すいません。追記としてwindows上で動く奴があったら教えてください
346 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 06:14:44 ] COBOL GCCでググってみました。 www.google.co.jp/search?sourceid=navclient&aq=t&hl=ja&ie=UTF-8&rls=GGLJ,GGLJ:2007-46,GGLJ:ja&q=COBOL+GCC COBOLってよくわからんのですが、リダイレクションとかなんかつかえばいいんでないんでしょうか? ここは、コンパイラやスクリプトエンジンを作るスレなので、 COBOLのスレで聞いたほうがイイ!と思います。
347 名前:344 [2008/05/20(火) 10:14:30 ] >>346 本当にありがとうございます。 ぜひ、参考にさせていただきます
348 名前:デフォルトの名無しさん [2008/05/20(火) 10:25:53 ] inforno :: Scalaでスタック指向言語をサクッと実装する inforno.net/articles/2008/05/17/simple-stack-oriented-language-implemented-using-scala
349 名前:デフォルトの名無しさん [2008/05/23(金) 09:50:42 ] expr: expr + expr |expr - expr |special special: expr + expr
350 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:54:28 ] 動的コンパイラや最適化の勉強をしようと思っているんですが、Ruby とかのス クリプト言語で書かれた、最適化の勉強用のおもちゃコンパイラ的なもので手 軽なのって無いでしょうか?
351 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 16:25:52 ] ・brainf*ck インタプリタを作った事が無い人でも作れる 結構最適化に向いていると思われる
352 名前:デフォルトの名無しさん [2008/05/24(土) 18:53:35 ] Martin Fowler's Bliki:パーサー恐怖症(パーサージェネレータ習得のすすめ) capsctrl.que.jp/kdmsnr/wiki/bliki/?ParserFear Terence Parr 著「The Definitive Antlr Reference: Building Domain-specific Languages」 www.amazon.co.jp/dp/0978739256
353 名前:デフォルトの名無しさん [2008/05/25(日) 17:57:53 ] 一瞬、メイド特化言語に見えた。
354 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 00:22:55 ] 緊急入院
355 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 03:35:41 ] C言語のコンパイラを探したんだが いろいろあるんだね・・・知らなかった。 ぶっちゃけお勧めって何? OSはWinXPとVISTAで。
356 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 03:36:14 ] >>1
357 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 08:25:07 ] >>355 英語学者が英語をしゃべれるとは限らないという。 Cコンパイラの話はコンパイラスレではなくCスレで聞け。
358 名前:355 mailto:sage [2008/05/27(火) 08:28:01 ] スレチすまそ
359 名前:デフォルトの名無しさん [2008/05/27(火) 22:36:22 ] >>351 brainfuck でできる最適化って具体的になにがあるでしょうか?
360 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:47:41 ] >>359 コンパイル時の定数畳み込みだろ。 究極的には入力命令","の影響の及ぶところとそうでないところを判別して、 影響の及ばないところは全てコンパイル時に計算することができる。 たとえば、 ++[>+++<-]>.,. というプログラムなら、 putchar((char)6);putchar(getchar()); と最適化できる。
361 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 23:37:09 ] >>360 ありがとうございます。 >究極的には入力命令","の影響の及ぶところとそうでないところを判別 これって、定石ではどうやってやるんでしょうか?まったくわかっていないけ ど、コールフローやデータフローの解析をする?
362 名前:デフォルトの名無しさん [2008/05/28(水) 22:54:14 ] あたりまえですがなw
363 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 04:45:04 ] >英語学者が英語をしゃべれるとは限らないという。 日本語学者が日本語をしゃべれるとは限らないという?
364 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 10:44:17 ] 海外の日本語学者にはそういう人もいるだろ
365 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 13:29:20 ] 地震の研究者がカンファレンスで日本にきて初めて地面の揺れを経験して 「今のは何だ」 と騒いだ話を思い出した。
366 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 14:17:34 ] こういうやり取りが某スレで展開されてましたが、今の流行ですか? 638 名前:デフォルトの名無しさん 投稿日:2008/05/25(日) 00:23:06 アムロ・レイだってマニュアルが無ければ ガンダムを操作することは出来なかった つまりはそういう事さ 639 名前:デフォルトの名無しさん 投稿日:2008/05/25(日) 00:38:18 それ以前にアムロもカミーユもロボット作ったりしてなかったか? つまりはそういう事さ
367 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 18:30:18 ] 教えて下さい。 Lispって人工知能とかで使われたりしてるって よく本とかに書いてあるのをみるんですが、 何が(どこが)人工知能にむいているんでしょうか? 逆に、他の言語だと何が(どこが)向いていないのでしょうか?
368 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 19:07:29 ] >>1 にかいてあることがわからない人は、中がっこうからやりなおしてね。
369 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 19:19:12 ] やり直しも何も中学生ですが何か?
370 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 19:20:51 ] >>368 わからねえならわからねえってハッキリ言えよこの屑が
371 名前:デフォルトの名無しさん [2008/06/01(日) 19:28:18 ] 分かってれば情報垂れ流しとか、ハッキリ言うとそれは廃人です
372 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 19:50:59 ] 貴様らはいちいち回りくどいな lispスレで聞けやこのハゲ!
373 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 21:07:38 ] >>370 わからない場合はわからないと言ってもいいんだけど、残念ながらわかるんで、 「わからない」と書くと嘘をついたことになっちゃう。だから書けないw あと、わからない奴が「わからない」と言うのは、名指しで答を求められて 「何か言わなきゃいけないけど答がわからない」という状況に陥ったときであって、 この場合は誰も当てはまらない。わからない奴はただ「黙ってる」場面だよ。 つまり、「わからねえなら黙ってろよ」と煽らなきゃいけない。君のはまるっきり的外れ。 頭の悪い子が興奮すると、こういうミスで大恥かいちゃうから気をつけようね。 こういうところで知能レベルってバレちゃうものだから・・・。
374 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 21:21:28 ] わからねえってハッキリ言えよこの屑
375 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 22:56:08 ] 煽りたい盛りのゴミはほっておけ まぁ放ったところで有益な答えが返ってこないだろう事実は変わらないがな
376 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 00:29:20 ] わかりません、ごめんなさい。 僕達は屑です
377 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 13:31:35 ] >>376 それでいい おまえらもこれからは素直に生きろよな
378 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 13:50:51 ] >>377 「おまえら」なんて他人事みたいに語ってるが「僕達」にはお前も入ってるんだぜ?
379 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 14:15:28 ] >>378 他人事も何も他人だ お前も素直になれ
380 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:33:51 ] いい加減うぜぇ
381 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 18:25:54 ] ここはRuby坊のLisp叩きスレですか?
382 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:14:42 ] Ruby坊はあらゆるスレに来てあらゆる言語を叩くので、 特にこのスレだけがどう、ということはないです。
383 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 00:10:05 ] 373さん、ここは子供の来るところではありませんよ。 さて、終了です。 スレを元に戻しましょう。
384 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 00:18:33 ] おまえらスルーしろよ 糞が
385 名前:デフォルトの名無しさん [2008/06/04(水) 00:23:33 ] インタプリタをCで作りたいです。 お勧めのサンプルって、無いですか?
386 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 00:57:59 ] >>384 頭の悪い子供には無理な注文。 相手の想定を上回ることを書いて鼻をあかしてやろう、と無駄なことを意気込み、 結果アピールできるのは自身の上昇した血圧だけ、というこの一セットは、彼らの宿命なのです。
387 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 01:10:09 ] で、>385は放置か?w
388 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 01:11:32 ] 相手してあげたいなら、存分に相手してあげればいい。
389 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 01:16:31 ] 断る。
390 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 01:57:20 ] 自分のお勧めはCマガジン 2000年5月号。 十数ページの記事で一応インタプリタが作れる。
391 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 10:24:36 ] >>385 テキストで書いてあるソースコードを読むようなインタプリタから 始めることはおすすめしない。 単純な仮想機械からやってみてはどうか?
392 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 15:11:50 ] Brainfuckインタプリタでいいじゃん
393 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 16:33:53 ] あんなの厨房でもできるじゃん
394 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 17:17:39 ] >>393 BFソース -> sed -> Cソース -> gcc -> ./a.out ってシェルスクリプト見たとき吹いた
395 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 19:09:37 ] >>394 何その素敵仕様w
396 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 19:36:51 ] >>391 初心者には無理じゃないのか?
397 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 20:26:44 ] >>395 TextBox(BFソース)->javascriptでreplace->javascript->eval の変化系っぽい
398 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 20:34:22 ] BFソース + Dソース --(Dコンパイラ)--> executable ってのなら前に見たな。 D言語では、コンパイル中にファイルを読み込んで、文字列操作をして、 その結果をコンパイルされるべきソースコードの一部に組み込めるらしい。
399 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 21:09:23 ] VCGグラフって、JPEGとかに変換できないのでしょうか? 見れなくて…
400 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 21:19:36 ] そのまんまの名前の可視化ツールあったと思うが。
401 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 08:15:08 ] How to build a monadic interpreter in one day (based on papers provided by the Haskell community and some other resources) 午前: 仮想機械 午後: パーザ Haskell習得とインストールにさらに半日くらいかな?
402 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 18:10:27 ] ここは、lispは禁句?
403 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 20:21:37 ] 下手に話題振ると、あっという間にlispスレになるよな
404 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 21:41:25 ] 構文解析をすっとばせるlispは、構文解析までしか語れない住民の多いこのスレでは不評です。
405 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 21:49:17 ] www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/impl/kamin/budd/0.html Lisp風構文を持つ"APL, Scheme, SASL, CLU, Smalltalk and Prolog"のインタープリタ
406 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 21:49:38 ] タイトル忘れた。 Kamin: Tim Budd's C++ Implementation of the Kamin Interpreters
407 名前:367 mailto:sage [2008/06/05(木) 22:24:23 ] ありがとうございました。
408 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 23:01:35 ] >>385 UNIXプログラミング環境 hocインタープリタをC+yaccで作る例が乗っている。 完全なソースコードも著者のWebSiteからダウンロード可能!
409 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 23:03:24 ] >>401 なつかしの「while言語」w
410 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 07:21:40 ] データフロー解析の簡単な例とか教えてください。
411 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 21:15:30 ] nicosia.is.s.u-tokyo.ac.jp/pub/staff/hagiya/kougiroku/compiler/PPT
412 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 01:06:23 ] やべ、いまさらだけどBNF理解した 興奮してきた
413 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 06:55:30 ] そこでパーザ・コンビネータですよ。
414 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 09:02:14 ] え、どこどこ?
415 名前:デフォルトの名無しさん [2008/06/21(土) 18:17:29 ] 160行のPythonコードでコンパイラとインタプリタを書く www.jroller.com/languages/entry/python_writing_a_compiler_and Pythonハジマタ\(^o^)/
416 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 20:51:09 ] インタプリタしかないようだが。
417 名前:デフォルトの名無しさん [2008/06/22(日) 03:16:27 ] ぱいぱい
418 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:33:43 ] stackless pypy
419 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 09:13:08 ] >>401 www.haskell.org/sitewiki/images/c/c6/ICMI45-paper-en.pdf
420 名前:デフォルトの名無しさん mailto:sage [2008/07/02(水) 07:36:22 ] こんなアホしかいませんが救ってやってください pc11.2ch.net/test/read.cgi/prog/1211550247/398