「コンパイラ・スクリプトエンジン」相談室5
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
05/01/19 19:06:04字句解析・構文解析から,データフロー解析,ループ並列化,タスク並列化,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン等各種最適化,
それにVM,GC,JIT,リンク時最適化,動的バイナリ変換などなど。
意味論に関する話題も歓迎です。
前スレ
1 http://pc.2ch.net/tech/kako/981/981672957.html
2 http://pc2.2ch.net/test/read.cgi/tech/1021136715/ (dat落ち)
3 http://pc5.2ch.net/test/read.cgi/tech/1070089173/
4 http://pc5.2ch.net/test/read.cgi/tech/1100097050/ (前スレ)
関連リンクは多分 >>2-10 あたり
0002デフォルトの名無しさん
05/01/19 19:06:33色々なツールの紹介
http://catalog.compilertools.net/
コンパイラ関連のリンク集
http://www.ulis.ac.jp/~nakai/rel_web_compilers.shtml
スクリプティング言語資料室(仮) (リンク)
http://www.kt.rim.or.jp/~kbk/
Compiler Construction
http://rananim.ie.u-ryukyu.ac.jp/~kono/lecture/2000/compiler/index.html
Compiler Construction (1997)
http://rananim.ie.u-ryukyu.ac.jp/~kono/lecture/1997/compiler/compiler.html
情報システム工学実験 III コンパイラ・コンパイラ
http://math.cs.kitami-it.ac.jp/~fuchino/proin/experimentIII-2000/jikken.html
OS/Programming 簡単な C コンパイラ
http://www.csg.is.titech.ac.jp/~chiba/lecture/os/
正規表現
http://hp.vector.co.jp/authors/VA007799/viviProg/doc_regexp.htm
コンパイラ研究・開発情報の一集積所
http://compilers.cs.uec.ac.jp/
Links and Selected Readings
http://www.gnu.org/software/gcc/readings.html
0003デフォルトの名無しさん
05/01/19 19:06:53UNIX板
yacc & lex
http://pc.2ch.net/test/read.cgi/unix/1031801314/
Lex and YACC primer/HOWTO (邦訳)
http://www.linux.or.jp/JF/JFdocs/Lex-YACC-HOWTO.html
Turbo Pascal Lex/Yacc
http://www.musikwissenschaft.uni-mainz.de/~ag/tply/tply.html
Jim Roskind's LALR(1) C++ Grammar
http://www.empathy.com/pccts/roskind.html
Flexと Bisonを同時に使う
http://guppy.eng.kagawa-u.ac.jp/~kagawa/1999/SysProg/both.html
KITE_ASM (yacc,lex)
http://www.arch.cs.kumamoto-u.ac.jp/project/kite/kiteasm/yacc/
http://www.arch.cs.kumamoto-u.ac.jp/project/kite/kiteasm/lex/
Cygwin
http://www.cygwin.com/
GNU utilities for Win32
http://unxutils.sourceforge.net/
0004デフォルトの名無しさん
05/01/19 19:07:16ANTLR(非yaccのパーサジェネレータ)
http://www.antlr.org/
JavaCC(Java Compiler Compiler)
https://javacc.dev.java.net/
http://village.infoweb.ne.jp/~fwif0083/program/java/javacc/javaccgrm.html
http://www.asahi-net.or.jp/~DP8T-ASM/java/tips/JavaCCHelloWorld.html
CUP & JLEX or CUP & JFlex
CUP http://www.cs.princeton.edu/~appel/modern/java/CUP/why.html
JLEX http://www.cs.princeton.edu/~appel/modern/java/JLex/
JFlex http://www.jflex.de/
SableCC
http://www.sablecc.org/
¬<><∪∪ (notavacc)LALR(1)
http://ne.cs.uec.ac.jp/~koto/notavacc/
JavaCCはLL(k)だけど、上のはANTLR以外はLALR(1)
でもANTLRはC++なんかにも対応。
boost::spirit(C++のテンプレートでEBNFの構文を模倣)
http://spirit.sourceforge.net/
http://boost.cppll.jp/HEAD/libs/spirit/index.html(マニュアル日本語化プロジェクト)
http://www.fides.dti.ne.jp/~oka-t/cpplab-boost-spirit.html
0005デフォルトの名無しさん
05/01/19 19:07:38GC FAQ -- draft
http://www.iecc.com/gclist/GC-faq.html
A garbage collector for C and C++
http://www.hpl.hp.com/personal/Hans_Boehm/gc/
一般教養としての Garbage Collection
http://www.is.s.u-tokyo.ac.jp/~vu/01/jugyo/processor/process/soft/compilerresume/gc/gc.html
Garbage Collection : Algorithms for Automatic Dynamic Memory Management
http://www.amazon.com/exec/obidos/ASIN/0471941484/
0006デフォルトの名無しさん
05/01/19 19:07:57●コンパイラ 原理・技法・ツール 1&2
http://www.amazon.co.jp/exec/obidos/ASIN/4781905854/
http://www.amazon.co.jp/exec/obidos/ASIN/4781905862/
通称ドラゴンブック。バイブル。
●コンパイラ構成法 原田 賢一
http://www.amazon.co.jp/exec/obidos/ASIN/4320029224/
http://www.hara.cs.keio.ac.jp/kCompiler/ (ソース、正誤表のダウンロード)
●プログラミング言語処理系 岩波講座 ソフトウェア科学〈5〉 佐々 政孝
http://www.amazon.co.jp/exec/obidos/ASIN/4000103458/
一冊で済ませたい人へ。
●コンパイラの構成と最適化 中田 育男
http://www.amazon.co.jp/exec/obidos/ASIN/4254121393/
最適化がメイン。
●コンパイラの仕組み 渡邊 坦
http://www.amazon.co.jp/exec/obidos/ASIN/4254127081/
薄い奴(185p)を読みたい人に。
●21st Century Compilers (Alfred V. Aho, Sethi, Ravi Sethi, Jeffrey D. Ullman, Monica Lam)
ペーパーバック版: http://www.amazon.co.jp/exec/obidos/ASIN/0321210913/
ハードカバー版: http://www.amazon.co.jp/exec/obidos/ASIN/0321131436/
●スモールコンパイラの制作で学ぶプログラムのしくみ
http://www.cbook24.com/bm_detail.asp?sku=4774121770
0007デフォルトの名無しさん
05/01/19 19:08:15kikyou.info (吉里吉里というゲームのスクリプト)
http://kikyou.info/
tiny C コンパイラ (C)
http://www.watalab.cs.uec.ac.jp/tinyCabs.html
6809用 Micro C コンパイラ
http://www.axe-inc.co.jp/pds/mc09.html
Portable Object Compiler (Obj-C >> C のトランスレータ?)
http://users.pandora.be/stes/compiler.html
自作コンパイラの部屋(PL/1, Pascal等)
http://www.tokumaru.org/
『Rubyソースコード完全解説』サポートページ
http://i.loveruby.net/ja/rhg/
『やさしい Lisp の作り方』と『やさしい Java インタプリタ の作り方』見つけた。
Java と C# で実装。
ttp://www.okisoft.co.jp/esc/go.html
ttp://www.okisoft.co.jp/esc/go2.html
ttp://www.okisoft.co.jp/esc/go3.html
ttp://www.okisoft.co.jp/esc/go4.html
MSによるPEフォーマット仕様書(日本語)
http://www.interq.or.jp/chubu/r6/reasm/PE_FORMAT/intro.html
0008デフォルトの名無しさん
05/01/19 19:10:03前スレ埋め厨お疲れさま。
0009デフォルトの名無しさん
05/01/19 19:14:47関連リンクは前スレッドのものをそのまま利用しました(手抜きです)。
追加があればお願いします。
>8
ありがとうございます。
0010デフォルトの名無しさん
05/01/19 19:34:25○ PLDI: http://research.ihost.com/pldi2005/
コンパイラの研究に関する最新成果を知りたければまずはここ。
○ POPL: http://www.cs.princeton.edu/~dpw/popl/05/
PLDIよりは理論寄りだが大いに参考になる。
○ ICFP: http://www.brics.dk/~danvy/icfp05/
関数型言語に関する学会。とても難しい。
○ OOPSLA: http://www.oopsla.org/2005/ShowPage.do?id=Home
オブジェクト指向言語に関する学会。最近はやや低調?
このスレッドから、この辺の学会にacceptされる人がでてくることを祈って…
0011デフォルトの名無しさん
05/01/19 19:49:20JavaCCはLOOKAHED使った場合、手続き型プログラムで選択肢を自由に選べるので、
LL(k)より強力。
(https://javacc.dev.java.net/doc/lookahead.htmlのboolean_expression)
ANTLRも同じだったと思う。
¬<><∪∪は強いて言えばLALR(∞)。
ちなみに最近のbisonはGLRも選択できる。
(http://www.gnu.org/software/bison/manual/html_mono/bison.html#GLR-Parsers)
¬<><∪∪も論文だとGLRサポート版も発表されてるけど、
webに乗ってるのは違うみたい。
0012デフォルトの名無しさん
05/01/19 20:57:15expressions を式と日本語当てたのは、まずかったかもな。
まぁ専門用語にはよくあることだけど。
0013デフォルトの名無しさん
05/01/19 21:09:53PLDIのページをみたが,topicsの先頭がlanguage support for security and safetyなんだね。
時代が変わったなー。
Topics of Interest
* language support for security and safety
* languages and compilers for parallel computing
* design and processing of domain-specific languages
* effective implementation of advanced language features
* program representations
* program analysis
* program optimizations and transformations
* dynamic compilation and optimization techniques
* storage management techniques
* compilation for distributed heterogeneous systems
* techniques for embedded and of mobile code
* interactions between compilers and architectures
* software development tools
* techniques for effective compiler construction
0014デフォルトの名無しさん
05/01/19 21:50:42ハァ?
0015デフォルトの名無しさん
05/01/19 23:32:02このスレッドでこれを忘れちゃいかんだろ。
International Conference on Compiler Construction
http://cc05.cs.berkeley.edu/
0016デフォルトの名無しさん
05/01/19 23:38:07WordNetからの引用
> 1. (23) expression, look, aspect, facial expression, face -- (the expression on a person's face; "a sad expression"; "a look of triumph"; "an angry face")
> 2. (18) expression, manifestation, reflection, reflexion -- (expression without words; "tears are an expression of grief"; "the pulse is a reflection of the heart's condition")
> 3. (15) expression -- (the communication (in speech or writing) of your beliefs or opinions; "expressions of good will"; "he helped me find expression for my ideas")
> 4. (6) saying, expression, locution -- (a word or phrase that particular people use in particular situations; "pardon the expression")
> 5. (4) formulation, expression -- (the style of expressing yourself; "he suggested a better formulation"; "his manner of expression showed how much he cared")
> 6. (4) formula, expression -- (a group of symbols that make a mathematical statement)
> 7. expression -- ((genetics) the process of expressing a gene)
> 8. construction, grammatical construction, expression -- (a group of words that form a constituent of a sentence and are considered as a single unit; "I concluded from his awkward constructions that he was a foreigner")
> 9. expression -- (the act of forcing something out by squeezing or pressing; "the expression of milk from her breast")
0017デフォルトの名無しさん
05/01/19 23:40:01RISCみたいにレジスタがatomicでない上、命令ごとの制約がたくさんあるため
今はものすごくad hocな実装になってしまってます。
0018デフォルトの名無しさん
05/01/19 23:40:580019デフォルトの名無しさん
05/01/19 23:45:01http://compilers.iecc.com/
ニュースグループcomp.compilersの記事がアーカイブされている。
今年で20周年らしい。fjは死亡同然だが、こちらは元気だね。
0020デフォルトの名無しさん
05/01/19 23:54:45CISCでのレジスタ割付けに関しては、最近だと
Andrew W. Appel, Lal George, Optimal Spilling for CISC Machines with Few Registers, PLDI, 2000.
がある(http://citeseer.ist.psu.edu/appel00optimal.html)。
けど、結局ぐちゃぐちゃになるのは仕方ない気もする。
0021デフォルトの名無しさん
05/01/20 02:18:410022デフォルトの名無しさん
05/01/20 02:33:000023デフォルトの名無しさん
05/01/20 02:34:400024デフォルトの名無しさん
05/01/20 03:04:490025デフォルトの名無しさん
05/01/20 05:25:020026デフォルトの名無しさん
05/01/20 05:32:430027デフォルトの名無しさん
05/01/20 06:09:510028デフォルトの名無しさん
05/01/20 06:11:09君らは何時寝るんだい?
0029デフォルトの名無しさん
05/01/20 06:13:520030デフォルトの名無しさん
05/01/20 06:15:140031デフォルトの名無しさん
05/01/20 07:19:010032デフォルトの名無しさん
05/01/20 07:29:21A Generalized Algorithm for Graph-Coloring Register Allocation(PLDI)
も面白そう。
確かλRTLとかいう、gcc風のRTLとλ式をあわせたような中間語を設計してた人だね。
0033デフォルトの名無しさん
05/01/20 08:08:550034デフォルトの名無しさん
05/01/20 08:11:530035デフォルトの名無しさん
05/01/20 08:51:25これ面白いですね。出勤前なのに読み耽ってしまいました。
日本語版があるといいのに。
0036デフォルトの名無しさん
05/01/20 08:56:540037デフォルトの名無しさん
05/01/20 09:01:580038デフォルトの名無しさん
05/01/20 09:20:47http://www.coins-project.org/
0039デフォルトの名無しさん
05/01/20 09:33:160040デフォルトの名無しさん
05/01/20 09:37:14ならお前が張れ、詭弁厨の荒らしが。
0041デフォルトの名無しさん
05/01/20 10:05:070042デフォルトの名無しさん
05/01/20 10:06:52詭弁でもなんでもないものを、詭弁のガイドラインに
無理矢理あてはめようとしてるところが笑えた。
0043デフォルトの名無しさん
05/01/20 10:07:34せっかくsweepしても、どんどん(ry
0044デフォルトの名無しさん
05/01/20 10:10:49スルーできない初心者ウザ
0045デフォルトの名無しさん
05/01/20 10:14:160046デフォルトの名無しさん
05/01/20 10:31:150047デフォルトの名無しさん
05/01/20 10:39:21956が自分へのレスだと思い込んだ。
(時間と文脈からみてたぶん954へのレス)
その後964を無視られ、968で煽られ、971あたりから暴走開始。
41-42も前スレ955。
どう呼ぼうと作者の勝手の人とは別人。
0048デフォルトの名無しさん
05/01/20 10:47:140049デフォルトの名無しさん
05/01/20 10:50:360050デフォルトの名無しさん
05/01/20 10:54:210051デフォルトの名無しさん
05/01/20 11:05:1947=前スレ荒らしの当事者。
0052デフォルトの名無しさん
05/01/20 11:44:020053デフォルトの名無しさん
05/01/20 11:52:490054デフォルトの名無しさん
05/01/20 11:54:340055デフォルトの名無しさん
05/01/20 12:00:320056デフォルトの名無しさん
05/01/20 12:43:56正しいな。詭弁ではなく。それだけは確か。
0057デフォルトの名無しさん
05/01/20 12:51:100058デフォルトの名無しさん
05/01/20 13:20:28Rubyでは文が値を持ちますが、それについてどう思われますか?
Rubyの作者は詭弁でしょうか?
0059デフォルトの名無しさん
05/01/20 13:24:17詭弁厨とうんこ厨と
放置できない厨に占拠されました。
おわり。
0060デフォルトの名無しさん
05/01/20 13:58:330061デフォルトの名無しさん
05/01/20 14:08:270062デフォルトの名無しさん
05/01/20 14:27:44↓
総てのプログラム言語で、「式」とか「文」とか他の言葉とかも
意味は作者が主観で勝手に定義していい。
↓
ゆえに俺は詭弁荒らしでないし、
俺が昔作って人に使わせた糞言語もうんこじゃない。
( c´,_ゝ`) .。oO(モイチド心と身体・メンタルヘルス板逝ッテコイ クスクス
0063デフォルトの名無しさん
05/01/20 14:40:580064デフォルトの名無しさん
05/01/20 14:47:29反論があるなら煽りではなく論理的にどうぞ。
それから、議論とは関係ないが、「昔言語作ってた人」は別人。
>>63
文が値を持つのは、Rubyだけではない、Ioだと、文は式の一種で、全ての文は値を持つ。
探せば、文が値を持つ場合がある言語って結構あるんじゃないかな。
それと、値を持とうが持つまいが、仕様で何を文と呼ぶのか
決めているというのはいろんな言語に共通のことだね。
0065デフォルトの名無しさん
05/01/20 15:15:09あと言葉の定義だが、プログラミング言語は言語、つまり言葉だから文もあれば文法エラーもあるってだけで、
「文」という言葉には、数学的に深い意味はあんまないような気もするし。
どっちにしろ言語のことは言語学者の領分だな、字面の「言語」を尊重すれば。
0066デフォルトの名無しさん
05/01/20 15:16:44なにか美味しいものでも食べて落ち着け。
トートロジー、意味の無い言葉、主観に基づく言葉に対して反論することは
それ自体ナンセンスだし、暇つぶしとしても漏れはお勧めできない。
0067デフォルトの名無しさん
05/01/20 15:22:41主観ではない。
多くの言語で、仕様で何を文と呼ぶか決定している。
これは客観的事実。
0068デフォルトの名無しさん
05/01/20 15:27:47昔のCOBOLは足し算でさえ英語の文法そのままにADDだしよ。
APLはその対極。
0069デフォルトの名無しさん
05/01/20 15:31:55式や、文という言葉に対しては、仕様で数学のようにきっちり定義
されてることが多いよ。
こういう、厳密な定義をする場合って、学問の世界では
当たり前のことなんだけど、既分野によって定義が違うなんてよくあることだな。
同じように、言語によって用語の意味が違う。まさかこのことを
わからない奴がいるなんて思わなかったよ。
0070デフォルトの名無しさん
05/01/20 15:33:14最近はどれも似たり寄ったりな言語ばかりで、コンセプトのしっかりした言語が少ないな。
0071デフォルトの名無しさん
05/01/20 16:17:57漏れは64を主観だっていってるんじゃないよ。「・・・には反論しても無意味だから落ち着け」って言っただけ。
人の言動がなんでも自分への攻撃に見えてしまうっていうのは、何らかのストレス状態だと思うよ。
0072デフォルトの名無しさん
05/01/20 17:15:27誤解されただけのこと
わかりやすい日本語を心がけよう
0073デフォルトの名無しさん
05/01/20 19:02:39「多くの言語で、仕様で何を文と呼ぶか決定している。
これは客観的事実。」
とあるが、その多くの言語の仕様は数学的な基盤に沿って
設計されているのが「客観的事実」では? その意味で
仕様書は用語の意味を勝手に改竄できる魔法の書ではないよ。
それにあなたが理論的基盤にしているRubyの仕様ってのは
実際テキトーかも…と言ったら、また暴れだすかなぁ? ドキドキ
まぁ、大好きなRubyの投影から計算理論(?)を構築するのは
人様の自由だけど…。その出発点は「客観」ではないですね。
0074デフォルトの名無しさん
05/01/20 19:24:06スルーすればいいからな。
いやスルーしてくれ、頼む。
0075デフォルトの名無しさん
05/01/20 19:24:37Ruby狂信者に何言っても無駄だからヤメレ。
ここまでの展開で物事の正誤が奴の眼中にないの、分かるだろう?
詭弁でもなんでもいいからRubyにまつわるすべては正しくないと希ガスマンのだ。
コワイネ
0076デフォルトの名無しさん
05/01/20 19:34:310077デフォルトの名無しさん
05/01/20 19:37:33Rubyのリファレンスを全部修正すれば解決するだろ
誰かMLで言ってこいよ
「ここで使う用語はRuby信者(キチガイ含む)が勝手に定義したもので
世間一般のそれとは全く異なる場合があります。」
とでも補足しとけ、と
つーかここ見てるよな?>いつも修正してる人
0078デフォルトの名無しさん
05/01/20 19:45:130079デフォルトの名無しさん
05/01/20 19:45:250080デフォルトの名無しさん
05/01/20 19:46:59Ruby信者でもなんでもないしな。
まあ、だんだん本物の馬鹿で納得させることは無理だって
事はわかったからまともに議論する気はなくなってきた。
0081デフォルトの名無しさん
05/01/20 19:55:17その言語においては文はそういう意味になる。
何でこんな当たり前の常識もわからないんだろうか?
0082デフォルトの名無しさん
05/01/20 19:58:33式は値を持つことが多い。
文は値を持たないことが多い。
正確な定義は言語によって異なる。
としか言えんでしょ。
前スレでdenotational semanticsから明らかと言ってた人は何か勘違いしてるとしか
思えない。
0083デフォルトの名無しさん
05/01/20 20:37:46そもそも文や式の「定義」は、大抵の言語では文法の上で定義するよね (厳密には BNF とか) 。
意味 (値を返すとか返さないとか) から「説明」することはできるけど、
それは「定義」じゃないし。
# もちろん「文とは値を返さないものです」とか定義されてる謎な仕様の言語を除く
今調べたところ、仕様書じゃないけど Ruby のチュートリアルによると
> Rubyでは任意の式をセミコロン(;)または改行で区切った並びを文とします.
らしい。なので Ruby の式は文でもあるということらしい。
メジャーな言語しか知らない香具師は
世の中には Ruby に限らずいろんな言語があるということを
肝に銘じておいてくださーい。
# とかいうと「Ruby はメジャーだ」って怒られるかな。
0084デフォルトの名無しさん
05/01/20 20:55:20「文脈」とは何を意味しているんでしょう。
それから「自由」は「文脈に対して自由」?「文脈から自由」?「文脈が自由」?
おせーて。
0085デフォルトの名無しさん
05/01/20 21:04:29英語は "Context-free grammar" 。
つまり「文脈がない」ってこと。
といっても、どこに何を書いてもいいということではなく、例えば
「整数が式であるならば、式を書いてもいいところには例外なく整数を書いてもいい」
って感じ。
0086デフォルトの名無しさん
05/01/20 21:23:05文(Statement)と式(Expression)の違いは何ですか?
2つの違いは言語に依存しますか?
【答】
なにを式と呼ぼうが、なにを文と呼ぼうが作者の勝手。
言語に依存する。
0087デフォルトの名無しさん
05/01/20 21:26:430088デフォルトの名無しさん
05/01/20 21:27:42duty freeとかと同じだね。
関係ないが、よくwebページにある「リンクフリー」宣言は、「リンクはないよ」と言ってる
ことになるのだろうか。
0089デフォルトの名無しさん
05/01/20 21:29:29英語だとそうなるね。まあ和製英語だし。
0090デフォルトの名無しさん
05/01/20 21:30:41「isは動詞だけど、主語が三人称単数のときしか使えない」(特定の文脈でしか使えない)
って文法はcontext-freeじゃないってことか。
>>87
頼むからほっといて(´・ω・`)
0091デフォルトの名無しさん
05/01/20 21:38:06Cの式はCの規格が主張する式。
Cの関数はCの規格が主張する関数。
数学用語は借り物だし、日本語訳の言葉の定義は規格による。
これが現実だな。
0092デフォルトの名無しさん
05/01/20 21:38:450093デフォルトの名無しさん
05/01/20 21:40:290094デフォルトの名無しさん
05/01/20 21:44:13話がずれてるが、ちょっと突っ込むと、BNFで定義してるのは、構文規則であって
意味じゃない。
意味を定義するには普通は人間の言葉を使う(意味論などを使うこともある)。
0095デフォルトの名無しさん
05/01/20 21:45:500096デフォルトの名無しさん
05/01/20 21:48:210097デフォルトの名無しさん
05/01/20 21:53:57↑
自然言語の話かよ
0098デフォルトの名無しさん
05/01/20 21:54:500099デフォルトの名無しさん
05/01/20 21:55:41はぁ?
0100デフォルトの名無しさん
05/01/20 21:56:06なるほど、関数も考えるとその通りだね。(数学or一般的な関数とは明らかに
意味が違う。)
0101デフォルトの名無しさん
05/01/20 21:56:410102デフォルトの名無しさん
05/01/20 21:59:48関数=プログラム
0103デフォルトの名無しさん
05/01/20 22:01:22カッコいい言語出来そうだな。最高はやっぱRubyか?
0104デフォルトの名無しさん
05/01/20 22:02:41∀x ∈ dom(f). ∀y, z ∈ cod(f). f x = y ∧ f x = z ⇒ y = z
を満たすものを言う。
0105デフォルトの名無しさん
05/01/20 22:07:430106デフォルトの名無しさん
05/01/20 22:08:220107デフォルトの名無しさん
05/01/20 22:11:490108デフォルトの名無しさん
05/01/20 22:14:460109デフォルトの名無しさん
05/01/20 22:24:20だって数学厨でもCには文句つけない。
0110デフォルトの名無しさん
05/01/20 22:25:29、と思ったら実は中身はRubyスレか。
,riTl|l.il|..ll..|ll.i..lli、
ril l!|.|l|.l||!.l|.|l|lil.l|l|l
||l!i!|州l|l|ll||lllミillll|l|
!|||ラ''' '´!|ll||l!lソ|||l|| こ
`t'_,,,ヽ i´l州 の
゙iー '' /i',ノ'゙入 荒 ス
`ー'、´ /,r'´ ,>、 れ レ
,イy' / /,r ヽ, 見 て
,r'// / /,i' ' i ゙、 え い
/,/li,/ ,/,i',i' ,r ,r7' ヽ,i. 奥 る る
〃,//l/ .// ,' /'´ / ハ. が が. よ
/,' / l./ ,i'i l// / / l 深 う
/ ,i ,i ,!/ ,i' l // ,/ ,/ l. い 案. に
,/ l l i l./ !i .l / _,/ / l! . ・ .外
,r'=‐、_ll_!j'_,_、-‐、‐' __,,. !l. . ・
/ノ /´/ ``ヽ、 ` ``''''"´ ,! l ・
/´ ,/-/ `` ``ヽ、、___,, i l
/ ,.イl / ,.r‐ ``ヽ、,__ ,! ./!l
/ jly' - '´ i i !.|
0111デフォルトの名無しさん
05/01/20 22:27:080112デフォルトの名無しさん
05/01/20 22:29:540113デフォルトの名無しさん
05/01/20 22:37:39文法エラーのような気もするが。
0114デフォルトの名無しさん
05/01/20 22:39:37保たれるな。evolving algebraなんてのもあったっけ。
0116デフォルトの名無しさん
05/01/20 22:40:56日本人はコンパイラ・スクリプトエンジンを開発するには向いてない。
0117デフォルトの名無しさん
05/01/20 22:42:140118デフォルトの名無しさん
05/01/20 22:43:2960年代も今も余り苦労は変わらない。
0119デフォルトの名無しさん
05/01/20 22:47:48だから、、普通、プログラミング言語の用語の意味は人間の言葉で「定義」してる。
これが間違い。↓
>そもそも文や式の「定義」は、大抵の言語では文法の上で定義するよね (厳密には BNF とか) 。
>意味 (値を返すとか返さないとか) から「説明」することはできるけど、
>それは「定義」じゃないし。
0120デフォルトの名無しさん
05/01/20 22:52:29そりゃ、数学の関数とCの関数は別物なんだから当たり前。
分野によって言葉の定義が違うのが当たり前。
言語によっても定義が違うのが当たり前。
0121デフォルトの名無しさん
05/01/20 22:56:22あ、ひょっとして
BNF exp ::= digit+ | exp + exp | exp - exp | ...
ではなくて
「『式』とは上の exp のことである」
この日本語が「定義」だ、って言ってる?
それとも、用語は普通こんな日本語では定義しない、って言ってるのかな。
0122デフォルトの名無しさん
05/01/20 23:00:02>BNF exp ::= digit+ | exp + exp | exp - exp | ...
これは一応定義の一部と解釈できるかもしれないが、どちらにせよ、
「構文規則」を定義してるだけ。
意味を完全に定義してるわけじゃない。
用語の意味を定義するには、「これはここを繰り返す」「これは値を返す」
「この値がtrueの時にここを実行」等、人間の言葉で定義するのが普通。
Cもそう。
0123デフォルトの名無しさん
05/01/20 23:05:42えーと。
だから「式と文の違いを意味で説明することはできるかもしれないが、
それは別に式と文それぞれの定義ではない」とゆーたんですよ。
0124デフォルトの名無しさん
05/01/20 23:08:36http://swissnet.ai.mit.edu/~jaffer/r5rs-formal.pdf
の7.2節みたいな内容か?
まあすべての言語がalgolやsmlやschemeみたいな意味定義は持ってないわな。
0125123
05/01/20 23:12:34漏れ「式とはこういう構文のことだ。そのように定義される式はこういう意味をもつ(これは式の定義ではなく式の意味の定義、のつもり)」
>122「式とはこういう構文であり、かつこういう意味をもつものだ」
とそれぞれ主張していたのか。多分。
この辺は趣味じゃないかなー。
0126デフォルトの名無しさん
05/01/20 23:17:12あのね、
>そもそも文や式の「定義」は、大抵の言語では文法の上で定義するよね (厳密には BNF とか) 。
>漏れ「式とはこういう構文のことだ。そのように定義される式はこういう意味をもつ(これは式の定義ではなく式の意味の定義、のつもり)」
これがとりあえず間違いなのね。文や式の定義って言う時は、普通、「意味」の定義のこと、あるいは、意味を含んだ定義を
言ってるわけで、文法上では定義されないの。
>意味 (値を返すとか返さないとか) から「説明」することはできるけど、
>それは「定義」じゃないし。
この「それ」は「違いを意味で説明すること」だったわけね・・・・
それはこちらが誤解してました。スマソ。
俺が定義だといってるのは、「値を返す」とかの説明がまさに意味の
定義だから。定義と言ってたわけ。
>>124
そうだよ。そういうふうに意味論で定義するか、もしくは自然言語で定義するわけだけど、
これは文法とは別物。
0127デフォルトの名無しさん
05/01/20 23:23:28しかしそれも今となっては古めかしいな。
言語に並行性を取り込もうとすると全面書き直しになりそうだ。
0128デフォルトの名無しさん
05/01/20 23:25:43operatorや関数が値を返すだけでなw
式は値を返すが、文は値を返さないとか言ってる奴はCでも間違いだぞw
0129123
05/01/20 23:31:17うーん、考え直すとやっぱ
>122「式とはこういう構文であり、かつこういう意味をもつものだ」
の方が自然ですね。ごめん。
>>128
今度は「返す」「返さない」の意味定義の話?
0130デフォルトの名無しさん
05/01/20 23:32:350131デフォルトの名無しさん
05/01/20 23:45:260132デフォルトの名無しさん
05/01/20 23:53:467.2節は意味関数で定義されてるが
それは人間の言葉で定義してるということでいいのか?
0133デフォルトの名無しさん
05/01/20 23:56:420134デフォルトの名無しさん
05/01/21 00:00:49そうなのか?orz
ところで、式と文の関係は言語に関係なく、
式⊂文
でいいんだよなぁ?
これに反する言語ってある?
0135デフォルトの名無しさん
05/01/21 00:00:58( void ∈ dom(f) ) = false ∧ ( void ∈ ∈ cod(f) ) = false
が常に成立するからだとおもふ
0136デフォルトの名無しさん
05/01/21 00:01:440137デフォルトの名無しさん
05/01/21 00:05:20煽りじゃなくて単に見解を聞きたいんだけど、
式のセマンティクスを定義するのに式という言葉を使いたくて
式という言葉をとりあえずBNFとかで定義しておいて、
「式は値を持つ」とかいう形でセマンティクス上の意味を付加していくことがある
(特に数学的にセマンティクスを定義したい場合)。
こういう場合、「式という言葉(の意味)」はBNFで定義され
「式の(セマンティクス上の)意味」は日本語とかで定義される、
といったことになると思うんだけど、どう?
0138デフォルトの名無しさん
05/01/21 00:08:080139デフォルトの名無しさん
05/01/21 00:10:12は
「式という言葉(の字面・パターン)」はBNFで定義され
じゃない?
0140デフォルトの名無しさん
05/01/21 00:11:38俺の見解としては、それは普通に間違い。
「式の意味」という言葉を人間が使う時、普通は「式の(セマンティクス上の)意味」を指すから。
あくまで、BNFで使っている名前は、構文規則を定義するための記号にすぎず、
人間が「式という言葉(の意味)」と言っているときでも、そのBNF上の記号を
指しているということはまず無い。
ここでのもともとの議論も無論、前者の意味で皆「式は〜」と言っていた。
0141デフォルトの名無しさん
05/01/21 00:12:58「 ところで、式と文の関係は言語に関係なく、
式⊂文
」はいいの? またRuby論理?
0142デフォルトの名無しさん
05/01/21 00:13:450143デフォルトの名無しさん
05/01/21 00:15:59127じゃないが、良くないよ。
人間の言葉で定義している場合が多いというだけで、
Schemeの7.2節は例外。
Schemeは人間の言葉と、形式的な意味論と両方の定義が存在するな。
後者の方がより厳密かもしれない。
0144123
05/01/21 00:16:58僕もそんな風に考えてたんだけど、どっちも「式」の定義だし、
「普通」は式の定義というと意味論的な意味のことを指すと言われれば
反論できないし、そんな気もしてきた。
>>141
漏れがそうでない言語を定義してあげよう。
0145123
05/01/21 00:18:22○意味論的な定義
0146デフォルトの名無しさん
05/01/21 00:19:04意味関数で定義できないということを意味しているの?
0147デフォルトの名無しさん
05/01/21 00:20:41結局は人間の言葉で定義してることにならん?
>>146
意味関数で定義できるけどしてないだけの場合も。
0148デフォルトの名無しさん
05/01/21 00:21:10極端なこと言えば、式の構文を定義するのに、式という言葉を使わなくてもいいわけで。
もちろん、わかりにくいからそんなことは普通しないんだけど、例えば、stmtって略したり
する時もある。
だから、BNF上の記号はあくまで言葉の(意味の)定義とは別。
構文規則を定義するために便宜上わかりやすい名前をつけた記号に過ぎない。
0149デフォルトの名無しさん
05/01/21 00:22:39まあ、間接的には結局そういうことだよ。
数学だってそう言えてしまう。
でも、普通はそういう直接自然言語で定義してないものを
自然言語で定義してるとは言わないわな。
0150デフォルトの名無しさん
05/01/21 00:23:43意味関数に落とすと矛盾が発生することはないの?
0151デフォルトの名無しさん
05/01/21 00:24:41あるに決まってるだろ。その場合はもちろん無効だよ。
そういうバグが無いことを前提にみんな議論してるんだろ。
0152デフォルトの名無しさん
05/01/21 00:25:27矛盾が発生しないように意味関数を定義していくんじゃないかな。
ひょっとして意味関数を「日本語->意味」みたいな関数だと思ってる?
0153デフォルトの名無しさん
05/01/21 00:26:22互いに矛盾するってことはある?
0154デフォルトの名無しさん
05/01/21 00:27:01意味がわからない。矛盾するもなにも、別の言語の別の定義だからなんの関係もない。
0155デフォルトの名無しさん
05/01/21 00:27:53の7.2節の形式の意味関数を念頭においてますよ。
0156デフォルトの名無しさん
05/01/21 00:30:16同じ状態機械を想定して
同じ形式の意味関数を用いたらどうです?
0157デフォルトの名無しさん
05/01/21 00:30:34SchemeとRubyの間の矛盾って?
0158デフォルトの名無しさん
05/01/21 00:32:59抽象機械の遷移状態が異なってくることはないですか?
0159デフォルトの名無しさん
05/01/21 00:34:43もちろん違うし、全く関係ないんだが。
0160デフォルトの名無しさん
05/01/21 00:37:01なんだか見えない相手と戦っているドンキホーテのようだな。がんがれ。
0161デフォルトの名無しさん
05/01/21 00:37:240162デフォルトの名無しさん
05/01/21 00:38:43俺が聞きたいよ。
お前が「形式が同じだとどうです?」と言ってるだろ。
察するに、表示的意味論なら表示的意味論、操作的意味論なら操作的意味論で、
似たような記号使うということか?
0163デフォルトの名無しさん
05/01/21 00:38:460164デフォルトの名無しさん
05/01/21 00:39:38いいですか?てなんだよ。お前が使ってる言葉だろ。
0165デフォルトの名無しさん
05/01/21 00:40:230166137
05/01/21 00:42:11了解。�dクス。
>>139
うーんと、式=加算or減算etcって感じ。
数学的には
式の集合=加算の集合∪減算の集合∪etc
みたいな。
0167デフォルトの名無しさん
05/01/21 00:44:58同じ意味関数を用いれば、おなじ記述になるはずですが、
文の定義が異なるのなら両者の遷移状態は異なることになりませんか?
0168デフォルトの名無しさん
05/01/21 00:49:34問題ではないのか?ということだな。
0169デフォルトの名無しさん
05/01/21 00:52:16聞いてる訳じゃなさそうだから答えてやれ >>165
0170デフォルトの名無しさん
05/01/21 00:54:090171デフォルトの名無しさん
05/01/21 00:54:20偶然同じ処理で同じ記述になろうが、別の処理で別の記述になろうが、
別の世界の別の定義同士は何の関係も無いぞ。
あと、表示的意味論と操作的意味論ごっちゃになってるだろ。
0172デフォルトの名無しさん
05/01/21 00:57:370173デフォルトの名無しさん
05/01/21 01:04:53同じ目的の処理とかほとんどありえない。そもそもSchemeに文なんて無いだろ。
0174デフォルトの名無しさん
05/01/21 01:06:46ふふん??
0175デフォルトの名無しさん
05/01/21 01:10:15違う目的なら違う記述になるよ。
で?それが何?
0176デフォルトの名無しさん
05/01/21 01:13:17なにかいい文献ない?
0177デフォルトの名無しさん
05/01/21 02:03:20構文解析器のことを英語で"parser"と言いますが、
字句解析器は英語で何と言うのでしょうか?
0178デフォルトの名無しさん
05/01/21 02:04:36lexer
# 数時間でえらい書き込みだと思ったら案の定・・・
0179デフォルトの名無しさん
05/01/21 03:03:070180デフォルトの名無しさん
05/01/21 03:09:37知らんけど
0181デフォルトの名無しさん
05/01/21 03:47:450182デフォルトの名無しさん
05/01/21 03:53:25ありがとうございます。
0183デフォルトの名無しさん
05/01/21 03:56:150184デフォルトの名無しさん
05/01/21 03:59:220185デフォルトの名無しさん
05/01/21 04:04:47定番のあの青い本にのってない?
0186デフォルトの名無しさん
05/01/21 04:49:210187デフォルトの名無しさん
05/01/21 05:02:260188デフォルトの名無しさん
05/01/21 05:14:580189デフォルトの名無しさん
05/01/21 07:38:01[syntax]
x ∈ Var
n ∈ Nat
Exp e ::= n | x | e1 e2 | e(x)
[semantics]
s ∈ State = Var -> Exp
[[e]]s = n iff s |- e => n
s |- n => n
s |- x => s(x)
s |- e1(x) e2 => e1[e2/x] <- capture avoiding substitution
s |- e(x) => e(x)
0190デフォルトの名無しさん
05/01/21 08:29:37∈ってなん?
0191デフォルトの名無しさん
05/01/21 08:34:520192デフォルトの名無しさん
05/01/21 09:18:570193デフォルトの名無しさん
05/01/21 09:47:11数学、集合論の「集合に属する」を表す記号
0194デフォルトの名無しさん
05/01/21 09:50:130195デフォルトの名無しさん
05/01/21 09:56:530196デフォルトの名無しさん
05/01/21 10:00:300197デフォルトの名無しさん
05/01/21 10:01:410198デフォルトの名無しさん
05/01/21 10:02:260199デフォルトの名無しさん
05/01/21 10:05:430200デフォルトの名無しさん
05/01/21 10:06:040201デフォルトの名無しさん
05/01/21 10:07:210202デフォルトの名無しさん
05/01/21 10:11:360203デフォルトの名無しさん
05/01/21 10:19:390204デフォルトの名無しさん
05/01/21 10:22:330205デフォルトの名無しさん
05/01/21 10:48:06http://pc5.2ch.net/test/read.cgi/pcnews/1095309232/
0206デフォルトの名無しさん
05/01/21 22:07:59statement は(値のある文なんて無いから)文のままでもいいよな。
0207デフォルトの名無しさん
05/01/21 22:08:320208デフォルトの名無しさん
05/01/21 22:19:29「詭弁のガイドライン」より。
・自分に有利な将来像を予想する
・主観で決め付ける
・ありえない解決策を図る
今のあなたはこの辺が該当します。
予想しうる今後の展開は、
・レッテル貼りをする
・勝利宣言をする
・知能障害を起こす
辺りです。
0209デフォルトの名無しさん
05/01/21 22:21:07詭弁でもなんでもないものを、詭弁のガイドラインに
無理矢理あてはめようとしてるところが笑えた。
0210デフォルトの名無しさん
05/01/21 23:15:130211デフォルトの名無しさん
05/01/21 23:28:310212デフォルトの名無しさん
05/01/22 10:24:34y とか 3 とかを式と呼ぶのは、確かにおかしい罠
0213デフォルトの名無しさん
05/01/22 10:47:09if(y)
などよく使うがな
0214デフォルトの名無しさん
05/01/22 11:12:480215デフォルトの名無しさん
05/01/22 11:19:06↑
文
0;
↑
文
0216デフォルトの名無しさん
05/01/22 11:20:37これらの構成要素と演算子を組み合わせたものが式
文というのは必ず特定のキーワードや記号が必要だと考えたら?
C言語
複文なら { ... }
if文なら if ( 式 ) ...
式文なら 式 ; // 式の後にセミコロン
ぬる文なら ; //セミコロンだけ
Ruby
知らん
RubyのBNFみたいなのある?
0217デフォルトの名無しさん
05/01/22 11:23:070218デフォルトの名無しさん
05/01/22 11:24:130219デフォルトの名無しさん
05/01/22 11:25:25無茶苦茶だな
不完全だし
信者が混乱するのもよくわかる
0220デフォルトの名無しさん
05/01/22 11:26:560221デフォルトの名無しさん
05/01/22 11:28:430222デフォルトの名無しさん
05/01/22 11:29:250223デフォルトの名無しさん
05/01/22 11:31:11古すぎ
0224デフォルトの名無しさん
05/01/22 11:31:55結局これが悪いんだよ。
平たく言えばソース読めってこと。
Ruby理解するにはC言語とyaccの知識が必要だとさ。
0225デフォルトの名無しさん
05/01/22 11:33:130226デフォルトの名無しさん
05/01/22 11:34:040227デフォルトの名無しさん
05/01/22 11:35:340228デフォルトの名無しさん
05/01/22 11:37:360229デフォルトの名無しさん
05/01/22 11:39:07このスレと直接関係ないんだけどさ、俺「釣り」とか「釣り師」っていうのは、
釣り師→ ○ /|←竿
ト/ |
│. ~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
八 §←餌(疑似餌) >゚++<
の組み合わせだと思ってたんだけど、
最近自称釣り師がダイレクトで自分の本音を攻撃されて「釣れた!」とか
言ってるの多いよね。
これは、どっちかというと、
..釣れたよ〜・・・│
────y──┘
・゚・。 ○ノノ。・゚・
~~~~~~~~~~│~~~~~~~~~~~~~~~
ト>゚++< ミ パクッ
ジタバタ ハ
ノ ノ
かと思うんだけど、どうだろう?
0230デフォルトの名無しさん
05/01/22 11:41:48perse.y見てもわかんないですよ。
>>223
同期取れよってことですね。
あんな古いのなら置かないほうがいい。
>>225
あい、C言語の知識は必要ですね。
知っててもコード混ざってて読みにくい。
少しでも常識があればこれ見て文法わかれとはいえませんね。
0231デフォルトの名無しさん
05/01/22 11:43:27正規表現置き換えかflexでも使って機械的に除けるだろ池沼
0232デフォルトの名無しさん
05/01/22 11:44:530233デフォルトの名無しさん
05/01/22 11:46:45parse.y見ても分からないのは勉強不足。
勉強しようとしないのはただの怠慢。
0234デフォルトの名無しさん
05/01/22 11:47:080235デフォルトの名無しさん
05/01/22 11:48:140236デフォルトの名無しさん
05/01/22 11:48:150237デフォルトの名無しさん
05/01/22 11:49:04お客さんはリファレンスでも読みながらママのおっぱいでもしゃぶってな
0238デフォルトの名無しさん
05/01/22 11:49:300239デフォルトの名無しさん
05/01/22 11:49:450240デフォルトの名無しさん
05/01/22 11:50:30LISPとかSmalltalkの話しようぜ
0241デフォルトの名無しさん
05/01/22 11:50:51RubyはいまのとこC言語も読めない人は対象にしてないから大丈夫
0242デフォルトの名無しさん
05/01/22 11:52:08煽ってる香具師はやっぱ池沼だな
0243デフォルトの名無しさん
05/01/22 11:53:090244デフォルトの名無しさん
05/01/22 11:54:500245デフォルトの名無しさん
05/01/22 11:55:04・flexが使える
・bisonが使える
・C言語くらいは使える
・何らかのアーキテクチャを対象としたアセンブラが使える(COMETとかの仮想環境以外の)
上記を全て満たす物のみ書込可
0246デフォルトの名無しさん
05/01/22 11:55:060247デフォルトの名無しさん
05/01/22 11:55:380248デフォルトの名無しさん
05/01/22 11:55:57スクリプトエンジンにアセンブラの知識は必要ありませんから。
残念。
0249デフォルトの名無しさん
05/01/22 11:57:24・Ruby関係者・信者以外
も加えといて
荒れるから
0250デフォルトの名無しさん
05/01/22 11:58:07追加しなくてOK
0251デフォルトの名無しさん
05/01/22 11:59:12Cは別に必須じゃないだろ。
MLでもPascalでも、とにかくコンピュータ言語が解かればよい。
0252デフォルトの名無しさん
05/01/22 11:59:150253デフォルトの名無しさん
05/01/22 12:00:31使いにくい重い生成実行コードが巨大の3拍子そろってる有害廃棄物。
0254デフォルトの名無しさん
05/01/22 12:01:22・bison(のようなもの)が使える
0255デフォルトの名無しさん
05/01/22 12:04:51漏れもspiritは見切ったね。ありゃboost信者でもヤバイと思うもん。
0256デフォルトの名無しさん
05/01/22 12:07:55グローバルに色々宣言しまくるから、なんか列挙子が他と被ってむかつく。
bison++は5年以上更新が無いし、bisonも一応オプションでC++のコード吐けるけど、
flexが吐くC++コードと連携できないんじゃ話にならないね。
0257デフォルトの名無しさん
05/01/22 12:09:170258デフォルトの名無しさん
05/01/22 12:09:32デストラクタまで自動化されてる。
日本にそういう資料無さ過ぎ。
0259デフォルトの名無しさん
05/01/22 12:10:19吐いたコードはGPL適用外なんで
0260デフォルトの名無しさん
05/01/22 12:12:280261デフォルトの名無しさん
05/01/22 12:12:520262デフォルトの名無しさん
05/01/22 12:13:150263デフォルトの名無しさん
05/01/22 12:14:430264デフォルトの名無しさん
05/01/22 12:17:420265デフォルトの名無しさん
05/01/22 12:20:220266デフォルトの名無しさん
05/01/22 12:25:100267デフォルトの名無しさん
05/01/22 12:28:57文法考えるのに余計なストレスが増えて使ってられんな。
勝手に文法置き換えてくれたりはしないのかね?
0268デフォルトの名無しさん
05/01/22 12:30:360269デフォルトの名無しさん
05/01/22 12:33:030270デフォルトの名無しさん
05/01/22 12:34:450271デフォルトの名無しさん
05/01/22 12:35:190272デフォルトの名無しさん
05/01/22 12:35:590273デフォルトの名無しさん
05/01/22 12:38:48テーブルも作らない単なる再帰下降らしいし。
0274デフォルトの名無しさん
05/01/22 12:39:510275デフォルトの名無しさん
05/01/22 12:40:53クラスの実体渡せないのが…
0276デフォルトの名無しさん
05/01/22 12:41:400277デフォルトの名無しさん
05/01/22 12:43:150278デフォルトの名無しさん
05/01/22 12:43:500279デフォルトの名無しさん
05/01/22 12:54:14http://www.bj-ig.de/software/bison/
0280デフォルトの名無しさん
05/01/22 12:57:530281デフォルトの名無しさん
05/01/22 13:03:49良く読んでないからワガンネ('A`)
0282デフォルトの名無しさん
05/01/22 14:06:44還元の条件後とに、このように(↓)書かないと行けませんよね?
L1: R1 {
Action1();
}
| R2 {
Action1();
}
単純に考えて、
L1: R1
| R2 {
Action1();
}
見たいに書けない理由って何かありますか?
0283デフォルトの名無しさん
05/01/22 14:12:40普通はルールをガーっと書いて文法がある程度できてることを確認してから
コードを入れていくし。
0284デフォルトの名無しさん
05/01/22 20:34:40それをコンパイル時に読み込むんですか?
それともただの設計図的なもの?
0285デフォルトの名無しさん
05/01/22 20:38:15全然わからん。
0286デフォルトの名無しさん
05/01/22 20:44:28はい。
0287デフォルトの名無しさん
05/01/22 20:46:51,一-、
/ ̄ l | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
■■-っ < んなわきゃーない
´∀`/ \__________
__/|Y/\.
Ё|__ | / |
| У.. |
0288デフォルトの名無しさん
05/01/22 20:48:12実行時に有限時間内に再構成可能なparserを読み込んで使えたら、君も人工知能の進化に貢献できる…とだけ伝えておこう。
0289デフォルトの名無しさん
05/01/22 20:48:29いや、取り合えず返事しとこうかと。
0290デフォルトの名無しさん
05/01/22 21:01:20これを世界征服に使うかどうかは君たちの哲学次第。健闘を祈る。
0291282
05/01/22 22:07:24R1の時に何もしないではなく、R1とR2に同じアクションを取らせたいのです。
0292デフォルトの名無しさん
05/01/22 23:50:53yaccの書き方でそう決まってるだけ。
L1: R1 | R2 {A}
を
L1: R1 {A} | R2 {A}
に変換するプリプロセッサでも書け。
0293デフォルトの名無しさん
05/01/23 00:03:55EarleyやCKY
0294デフォルトの名無しさん
05/01/23 00:12:25LALR(1)か何かの制約だとおもてたよW
0295デフォルトの名無しさん
05/01/23 01:23:170296デフォルトの名無しさん
05/01/23 02:02:44お前馬鹿だろ?
コンパイラの前に母国語を何とかしたら?
0297デフォルトの名無しさん
05/01/23 02:22:23俺だったら恥ずかしくて絶対できねぇw
0298デフォルトの名無しさん
05/01/23 09:22:400299デフォルトの名無しさん
05/01/23 10:38:070300デフォルトの名無しさん
05/01/23 12:23:380301デフォルトの名無しさん
05/01/23 13:42:180302デフォルトの名無しさん
05/01/23 15:31:17もちろん、dat落ちギリギリで保守するなどといった、はしたない住人など存在しない。
0303デフォルトの名無しさん
05/01/23 15:56:22> SPathCC とは?
>
> Augmented BNF に従って記述された文法定義を用いて、文法定義に従って
> 文書の字句・構文解析を行う解析器(Parser)を生成する解析器生成系(Parser Generator)と、
> XPath に類似する構文経路表現 SPath(Syntax Path Language)を用いて構文木に対して
> 内容を伴う構造問合わせを実行可能な SPath 処理系の統一パッケージです。
見つけただけで、まったく使ったことない。
0304デフォルトの名無しさん
05/01/23 19:30:26関数でなくて機能として訳した方がよかったね。
0305デフォルトの名無しさん
05/01/23 19:37:350306デフォルトの名無しさん
05/01/23 19:39:450307デフォルトの名無しさん
05/01/23 19:41:410308デフォルトの名無しさん
05/01/23 19:42:40あほなことを・・・
もし"function" を「機能」なんて訳したら、
それこそボコボコに叩かれるだろうが。
そんなことをした奴には、二度と翻訳の
仕事は廻ってこないだろう。
それどころか、頭脳労働の職に就けるか
どうかも怪しいね。
0309デフォルトの名無しさん
05/01/23 19:54:50【名-1】機能、作用、働き
【名-2】関数
【名-3】儀式、社交的会合
【名-4】職務
【自動】機能する、働く
0310デフォルトの名無しさん
05/01/23 19:57:150311デフォルトの名無しさん
05/01/23 20:15:320312デフォルトの名無しさん
05/01/23 20:19:26なんて単語もある
0313デフォルトの名無しさん
05/01/24 21:44:000314デフォルトの名無しさん
05/01/24 21:46:39勉強になった。(例:Ruby)
0315デフォルトの名無しさん
05/01/24 21:48:21http://pc5.2ch.net/test/read.cgi/tech/1049778124/
0316デフォルトの名無しさん
05/01/24 21:59:240317デフォルトの名無しさん
05/01/25 00:23:300318デフォルトの名無しさん
05/01/25 21:17:47初めてスクリプトだのに触る人には全然イメージ湧かなそう。
勉強には向かないわ、iアプリ向けなんかに書くからソースも読みづらいわでお勧めできない。
0319デフォルトの名無しさん
05/01/25 23:43:38そうか?俺は結構面白かったけどな。といっても最後まではまだ読んでない。
例えがちょっと苦しいのは同感だが、女の子らしくって説明が可愛い。
夜中でも何か目が冴えて頭に入る感じw
まぁ、全体を初心者が見通すにはいいんでない?
0320デフォルトの名無しさん
05/01/26 22:25:150321デフォルトの名無しさん
05/01/26 22:25:440322デフォルトの名無しさん
05/01/26 22:26:410323デフォルトの名無しさん
05/01/26 23:45:16スモールコンパイラ、結構可愛い
0324デフォルトの名無しさん
05/01/27 23:20:15だれそれ?
0325デフォルトの名無しさん
05/01/27 23:29:44私です
0326デフォルトの名無しさん
05/01/27 23:58:540327デフォルトの名無しさん
05/01/28 17:17:200328デフォルトの名無しさん
05/01/29 00:16:01りんご畑のねーちゃんのこと?
0329デフォルトの名無しさん
05/01/29 23:24:430330デフォルトの名無しさん
05/01/29 23:27:490331デフォルトの名無しさん
05/01/30 10:41:07CFGから外れる処理を行いたい場合超有効。
0332デフォルトの名無しさん
05/01/30 13:05:090333デフォルトの名無しさん
05/01/30 20:28:06同意。特に実用的なプログラムでは、多少の例外を除いてまずそう。
0334デフォルトの名無しさん
05/01/30 20:41:160335デフォルトの名無しさん
05/01/30 21:36:48「再帰」上向きってどんなプログラムだよ
0336デフォルトの名無しさん
05/01/30 22:09:440337デフォルトの名無しさん
05/01/30 22:16:23331ではないが、
新しい構文を追加するときに、
LALRの制限とかCFGの限界とかに縛られなくていいのは
ある意味実用的。
0338デフォルトの名無しさん
05/01/30 22:28:330339デフォルトの名無しさん
05/01/31 04:50:480340デフォルトの名無しさん
05/01/31 06:36:05字句解析・構文解析から,
字句解析・構文解析から,
字句解析・構文解析から,
字句解析・構文解析から,
字句解析・構文解析から,
0341デフォルトの名無しさん
05/01/31 07:34:35盛りあがれるのは、せいぜい、字句解析・構文解析までってことだな。
そこら辺りまでなら、学部レベルの授業で皆なじみがあるし。
0342デフォルトの名無しさん
05/01/31 12:43:02どういうアプローチで始めるのが良いでしょうか。
中間言語を生成するコンパイラと、実行用アプリケーションにわけようかと思っています。
なお、経験はJavaサーブレットを使ったシステム開発程度で、
文字列の解析はあまり経験がないです。数式程度。
0343デフォルトの名無しさん
05/01/31 12:45:00有益な情報は匿名で出したらもったいないし。
0344デフォルトの名無しさん
05/01/31 13:00:460345デフォルトの名無しさん
05/01/31 13:04:37オナラ禁止。
0346デフォルトの名無しさん
05/01/31 17:03:05有益な情報とはなんだよ
知る人ぞ知るマイナー知識というだけで、難しい内容なんかあるかっちゅーの
処理系作る気ないならどっか行ってくれ
読んでいてクソも詰らん
0347デフォルトの名無しさん
05/01/31 18:20:46綾本のサンプルをダウンロードしていじるとか
http://www.gihyo.co.jp/books/support.php/4-7741-2177-0
0348デフォルトの名無しさん
05/01/31 20:39:21実は、研究と言えるほどの分野だよ。
今もコンパイラに関する論文はかなり出てる。
0349デフォルトの名無しさん
05/01/31 21:05:550350デフォルトの名無しさん
05/01/31 21:39:40面白い人ですね。芸人の方ですか?
0351デフォルトの名無しさん
05/01/31 21:42:25処理系作るだけしか興味がないのか。
こんなところではまともな議論にはなるわけがない、というのは納得できるな。
…専門学校生かな?
0352デフォルトの名無しさん
05/01/31 21:53:12ちょっとやればサルでも分る事を偉そうに語りまくるから、何だコイツと思ってるだけ、
それだけ。
0353デフォルトの名無しさん
05/01/31 21:57:00なるほど、綾本というのはスレの頭にも載ってる本ですね。
amazon評価だと○動くサンプルコードが載ってる ×たとえがわかりにくい
とのことなので、パーサ初心者にはいいのかも。
店頭で探してみます。
0354デフォルトの名無しさん
05/01/31 22:01:08ほう、サルでも解かることを一生懸命研究している人が滑稽だな。
0355デフォルトの名無しさん
05/01/31 22:05:190356デフォルトの名無しさん
05/01/31 22:05:480357デフォルトの名無しさん
05/01/31 22:19:41押売の断りかた:
要らないものは要らないとハッキリ言うこと。
0358デフォルトの名無しさん
05/01/31 22:29:170359デフォルトの名無しさん
05/02/01 00:41:26言語系の技術って、そうめったに新しいものは出て来ていないよね。
論文にしても然り。
いろんなものは何時の時代にも出て繰るけど、
良いものは皆無。
ある意味、IT技術の窓際族かもw
0360359
05/02/01 00:42:02(単なる煽りになる。)
0361デフォルトの名無しさん
05/02/01 00:49:02少なくとも、まともな学会・会議や論文誌に掲載される全ての
論文に、必ず新規性がある。
>>359がその事実を否定できる程の人物である可能性は
限りなく低い。
0362sage
05/02/01 01:18:20インタプリタででも作ったほうがさっさと作れるのだろうか。
0363デフォルトの名無しさん
05/02/01 01:32:53ちなみに、どんな分野なら新しいものが出てるの?
0364デフォルトの名無しさん
05/02/01 13:25:02俺は単純にデータ仕様を構造体にして、パース次第そこへ突っ込んで書き出すだけで、
インタプリタなんて考えた事も無いな。
0365デフォルトの名無しさん
05/02/01 19:50:551、新しい言語を作って有名人になる為。
2、仕事でコンパイラを作ることがあるから。
3、ただの趣味・勉強。
0366デフォルトの名無しさん
05/02/01 20:11:40過去スレ読んだ方が勉強になる...
0367デフォルトの名無しさん
05/02/01 20:30:330368デフォルトの名無しさん
05/02/01 20:39:46ゲーム屋さんなので演出家が使いやすい記述ができるスクリプトコンパイラとか作りますです。
0369デフォルトの名無しさん
05/02/01 20:42:080370デフォルトの名無しさん
05/02/01 20:44:18もう来なくて結構です。
0371365
05/02/01 21:01:350372デフォルトの名無しさん
05/02/01 21:29:10選択肢全てが厨房じみている。
0373デフォルトの名無しさん
05/02/01 21:32:170374デフォルトの名無しさん
05/02/01 21:32:510375デフォルトの名無しさん
05/02/02 00:38:29(´・ω・`)
0376デフォルトの名無しさん
05/02/02 00:40:20もう来なくて結構です。
と言ったはずですが?
0378デフォルトの名無しさん
05/02/02 00:46:220379デフォルトの名無しさん
05/02/02 00:48:19他に選択肢がなにかあるか?
0380デフォルトの名無しさん
05/02/02 05:52:38PC自体に対する理解も深まるし、アセンブリ言語の練習にもなるしな
新しい言語を作って有名になるのは・・その辺の奴には無理では・・・w
0381デフォルトの名無しさん
05/02/02 06:06:59馬鹿にしてる奴の想像以上に手間隙はかかってるし、有名になるためのツボをうまく
捕らえていたんだよな。
この程度なら誰でも出来るんなら、今頃HSPの代わりに、もっといいものが
有名になっているはず。
0382デフォルトの名無しさん
05/02/02 06:41:10必要な機能を必要なだけしっかり実装していたってことだな。
勘違い言語オタクにはまあムリだろうね。
0383デフォルトの名無しさん
05/02/02 07:01:17そういう物作るのには向いているだろう
0384デフォルトの名無しさん
05/02/02 07:09:01極端に低い敷居でフリーソフトとして参入したからだろ。
昔は、ただ窓が出したいだけなのに、GTKだの複雑なWindowsの仕組みだの
要求される知識が多すぎたからな。
あとは、マルチメディアで五感に訴えたところだな。
極端に低い敷居で窓やコントロールやグラフィックや音楽などを操れたら
嬉しくなって飛びつく奴は絶対多い。
0385デフォルトの名無しさん
05/02/02 08:07:010386デフォルトの名無しさん
05/02/02 12:55:40結構作ってそうな気がすんだが、
どうなんだろう。
0387デフォルトの名無しさん
05/02/02 13:05:36ゲームはゲームでも、ノベルゲームとかの類の紙芝居的なものに多いよね。
そして、スクリプトをただ「作りたいだけ」。
既に作られたものがあり、それを利用すれば実現したい機能が実現できるにもかかわらず
使わないというのは愚かだね。
それに、紙芝居的なゲームならコンテンツが重要なのに、しょうもないプログラマが
しゃしゃり出てきて無駄な事に時間と金を費している。
まったく、ナンセンス、非効率。
0388デフォルトの名無しさん
05/02/02 17:22:46/ヽ /ヽ
/ ヽ / ヽ
______ /U ヽ___/ ヽ
| ____ / U :::::::::::U:\
| | // ___ \ ::::::::::::::|
| | | | | U :::::::::::::|
| | .|U | | ::::::U::::|
| | | ├―-┤ U.....:::::::::::::::::::/
| |____ ヽ .....:::::::::::::::::::::::<
└___/ ̄ ̄ :::::::::::::::::::::::::|
|\ | :::::::::::::::::::::::|
\ \ \___ ::::::
0389デフォルトの名無しさん
05/02/02 17:27:14AAで誤魔化すな。
思うところがあるのなら、書く価値のあることだけを書け。
0390デフォルトの名無しさん
05/02/02 17:37:12昨今は使ってない所が無いくらいじゃないか?
あらゆる分野のゲームについて。
しかも flex bison があれば作り捨て可能だぞ、
むしろ使いまわすだけの理由がなければ捨てたほうがいいかと。
特にオーサリング環境(開発ラインのネットワークの構成やDBの構成を含む)と
一体成型で作ったスクリプトの威力は絶大なんですがね。
そこらに転がっている単体動作のスクリプトエンジンとは一味違いますよ。
0391デフォルトの名無しさん
05/02/02 17:58:100392デフォルトの名無しさん
05/02/02 18:00:50たとえば、コンパイル時に変更や依存関係を検出して、関係各位にメールを飛ばして注意喚起するとか。
たとえば、コンパイル時に必要なスクリプトから必要なデータを検出して、必要なサーバーからデータをダウンロードするとか。
その他色々
0393デフォルトの名無しさん
05/02/02 18:01:30バグが出にくいからに決まってるだろハゲ
0394デフォルトの名無しさん
05/02/02 18:03:460395デフォルトの名無しさん
05/02/02 18:06:02アドホックな仕様変更が必要になったりする。汎用的にしようなんて
考えてる時間が無いことも多いのよ。
0396デフォルトの名無しさん
05/02/02 18:06:480397デフォルトの名無しさん
05/02/02 18:10:360398デフォルトの名無しさん
05/02/02 18:16:380399デフォルトの名無しさん
05/02/02 18:18:020400デフォルトの名無しさん
05/02/02 18:18:340401デフォルトの名無しさん
05/02/02 18:21:51よっぽど小規模な開発しかやった事無いんだな
0402デフォルトの名無しさん
05/02/02 18:47:55やってみなよ、その既存のスクリプトと同じものを作るかそれ以上の労力が必要だから。
0403デフォルトの名無しさん
05/02/02 19:03:53具体例出してもらわんと本当に自作じゃないと解決できないのか
単に無能なだけなのかわからんよ。
0404デフォルトの名無しさん
05/02/02 19:16:00スルーしろよ。
0405デフォルトの名無しさん
05/02/02 19:37:180406デフォルトの名無しさん
05/02/02 19:44:010407デフォルトの名無しさん
05/02/02 19:44:27さて、
「字句解析・構文解析から,データフロー解析,ループ並列化,タスク並列化,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン等各種最適化,
それにVM,GC,JIT,リンク時最適化,動的バイナリ変換などなど。
意味論に関する話題も歓迎です。」
の話でもしましょうか。
0408デフォルトの名無しさん
05/02/02 19:48:250409デフォルトの名無しさん
05/02/02 19:49:52しょぼい自作スクリプト使わされる方の身にもなってくれよ…
0410デフォルトの名無しさん
05/02/02 19:52:11余計なバグが産まれなくていいんだよ
0411デフォルトの名無しさん
05/02/02 19:52:430412デフォルトの名無しさん
05/02/02 19:58:070413デフォルトの名無しさん
05/02/02 20:06:100414デフォルトの名無しさん
05/02/02 20:16:000415デフォルトの名無しさん
05/02/02 20:21:53スレ違いのレスが付くより過疎った方がはるかにマシ。
0416デフォルトの名無しさん
05/02/02 20:22:37自分で作れないからって僻んじゃだめですよー
0417デフォルトの名無しさん
05/02/02 20:29:41そして、スクリプトをただ「作りたいだけ」。
既に作られたものがあり、それを利用すれば実現したい機能が実現できるにもかかわらず
使わないというのは愚かだね。
それに、紙芝居的なゲームならコンテンツが重要なのに、しょうもないプログラマが
しゃしゃり出てきて無駄な事に時間と金を費している。
まったく、ナンセンス、非効率。
0418デフォルトの名無しさん
05/02/02 20:30:36さて、
「字句解析・構文解析から,データフロー解析,ループ並列化,タスク並列化,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン等各種最適化,
それにVM,GC,JIT,リンク時最適化,動的バイナリ変換などなど。
意味論に関する話題も歓迎です。」
の話でもしましょうか。
0419デフォルトの名無しさん
05/02/02 20:31:490420デフォルトの名無しさん
05/02/02 20:32:380421デフォルトの名無しさん
05/02/02 20:58:10いや、需要があるならその辺の最適化ねたについて語りたいところだが、
たぶんスルーされるだけだろう。このスレの最初の方みたいに。
0422デフォルトの名無しさん
05/02/02 21:34:49なんでフログラマがスクリプト使うんだよ(w
チーム編成のレベルでおかしなことになってないか、おまえん所。
0423デフォルトの名無しさん
05/02/02 21:44:260424デフォルトの名無しさん
05/02/02 21:57:18いやプログラマじゃないんだが。
Luaとかを使って欲しいというお願いは却下されました。
別に自作でもいいんだけどデバッグ環境とかもしっかり作って欲しい…
0425デフォルトの名無しさん
05/02/02 21:57:44ちょっと気になった、カプセルによって文法削減や拡張はどうやってやるの?
0426デフォルトの名無しさん
05/02/02 22:03:29>いやプログラマじゃないんだが。
うそコケバカグラマ
0427デフォルトの名無しさん
05/02/02 22:06:530428デフォルトの名無しさん
05/02/02 22:16:56しょぼい自作スクリプト使ってる所も多そうだな。
0429デフォルトの名無しさん
05/02/02 22:20:39flex bison が使えるようになれば、それこそC++に匹敵する文法だって不可能ではなくなる。
C++のようにする必要は無いが、それを作ってプランナーに渡すと何が起こるか知らないだろ。
ヘッポコプログラマがC++を使うと酷い事になるよな、Javaを使うとある程度解決する。
レベルの違いこそあれ同じ事情が発生するのだよ、素人君。
0430デフォルトの名無しさん
05/02/02 22:26:190431デフォルトの名無しさん
05/02/02 22:36:06まあできるだけ余計な機能は無いに越した事は無いけど。
というかわかっててシンプルにしてるなら煽りはスルーしてよ。
0432デフォルトの名無しさん
05/02/03 00:37:32何も取り去るものが無くなった時に達成できるものである
アントワーヌ・ド・サン=テグジュペリ
0433デフォルトの名無しさん
05/02/03 01:01:43誰?
0434デフォルトの名無しさん
05/02/03 01:27:20本当にしらんのか? orz
0435デフォルトの名無しさん
05/02/03 01:30:29時と場合による。
0436デフォルトの名無しさん
05/02/03 01:33:520437デフォルトの名無しさん
05/02/03 01:48:22つか、海外の文献って章の始めに結構文学作品の引用あるんだが
バカグラマーはなぜだか考えたことも無いんだろうね。
0438デフォルトの名無しさん
05/02/03 01:56:13> つか、海外の文献って章の始めに結構文学作品の引用あるんだが
どうしてなの?
0439デフォルトの名無しさん
05/02/03 04:12:03正直洒落か気取ってるだけだと思ってた。俺も知りたい。
0440デフォルトの名無しさん
05/02/03 04:25:57気取ってるだけだろな。アメリカ人はかっここつけるの大好きだし。
しかし不思議の国のアリスみたいなので教養見せ付けてるつもりなのって
最高にダサくない?w
俺も自分の書く仕様書に東条英機の『戦陣訓』を引用しようかな。。。
0441デフォルトの名無しさん
05/02/03 04:52:340442デフォルトの名無しさん
05/02/03 05:02:360443デフォルトの名無しさん
05/02/03 05:24:260444デフォルトの名無しさん
05/02/04 00:02:140445渡辺研 学生
05/02/06 08:23:31tiny C コンパイラ (C)
http://www.watalab.cs.uec.ac.jp/tinyCabs.html
必要な人はバックアップを取っておいた方が良い。
渡辺教授の退官で今年度限りであぼーんかも。
0446デフォルトの名無しさん
05/02/06 12:37:090447デフォルトの名無しさん
05/02/07 06:52:550448デフォルトの名無しさん
05/02/07 07:39:280449デフォルトの名無しさん
05/02/07 09:06:130450デフォルトの名無しさん
05/02/07 17:15:110451デフォルトの名無しさん
05/02/07 19:45:380452デフォルトの名無しさん
05/02/07 19:52:11老研究者がこのスレ見て「あぼーんかも」とか
書いてるわけか?w
0453デフォルトの名無しさん
05/02/07 19:53:40そりゃ2ちゃんねらなら書くだろう。
0454デフォルトの名無しさん
05/02/07 19:57:232ちゃんねらな老人か。カコイイなw
ここはベテラン研究者が集うレベルの高いインターネッツですねw
0455デフォルトの名無しさん
05/02/07 20:09:59普通にいるって。そういう素振りを見せないだけ。実際知っているし。
0456デフォルトの名無しさん
05/02/07 20:16:38俺も知ってる、結構お年寄りの人もいるよね。
0457デフォルトの名無しさん
05/02/07 20:24:320458デフォルトの名無しさん
05/02/07 20:26:59このスレ。
0459デフォルトの名無しさん
05/02/07 20:28:41分かってないな。
2ちゃんねるで暴れてストレス解消に決まってるでしょ。
0460デフォルトの名無しさん
05/02/07 20:36:11そんなものが出ていたなんて知らなかった…
0461デフォルトの名無しさん
05/02/07 21:21:21リンク先公開きぼん
0462デフォルトの名無しさん
05/02/07 22:09:58ttp://www.ipsj.or.jp/members/Journal/Jpn/4503/article038.html
0463デフォルトの名無しさん
05/02/07 22:38:070464デフォルトの名無しさん
05/02/08 01:12:40誰も止めなかったのがすごい
0465デフォルトの名無しさん
05/02/08 01:37:26こいつだ。研究業績にそれのpdfもあるよ。
統計は専門外なんでどの程度まじめな研究なのか判断できないけど。
ってスレ違いだった。
0466デフォルトの名無しさん
05/02/08 01:42:38うわ、なんでトップにAAが…
この人ちゃねらだ。
0467デフォルトの名無しさん
05/02/08 05:46:040468デフォルトの名無しさん
05/02/08 06:07:08いや、キモい。
0469デフォルトの名無しさん
05/02/08 07:03:372chどころの騒ぎではなく、2chの研究してるところに突っ込めよ・・・・
0470デフォルトの名無しさん
05/02/08 23:51:29例に挙がってるのがどんな研究かは見てないけど
面白い題材だと思うけど。
0471デフォルトの名無しさん
05/02/09 00:10:25論文誌の一番最後の項だった。日陰っぽいのは2chらしくてよろしい。
0472デフォルトの名無しさん
05/02/09 08:50:14どの辺が突っ込み所なの?
0473デフォルトの名無しさん
05/02/11 12:29:330474デフォルトの名無しさん
05/02/11 22:27:03卒論・修論終わって現実逃避しなくてよくなったから。
0475デフォルトの名無しさん
05/02/12 01:23:130476デフォルトの名無しさん
05/02/12 01:35:230477デフォルトの名無しさん
05/02/12 01:42:17なんだっていいよ。そんなことはここでは議論にはならない。
0478デフォルトの名無しさん
05/02/12 06:27:58作る言語自身
0479デフォルトの名無しさん
05/02/12 06:39:590480デフォルトの名無しさん
05/02/12 15:21:53自己記述するにはコンパイラが必要なので
それができるまでどの言語でコンパイラを作るかだ
0481デフォルトの名無しさん
05/02/12 15:28:02↓
XでXのコンパイラX_compを書く。
↓
X_compをX_compでコンパイルする。
↓
Xのネイティブコンパイラ完成。
0482デフォルトの名無しさん
05/02/12 15:36:36字句解析、リスト処理、ファイル入出力などが手軽にできればとりあえずスクリプト言語でもいい。
性能を求めるなら部分的にC/C++で書け。何か問題でもあったのか?
0483デフォルトの名無しさん
05/02/12 15:58:40低次の入力インタフェースから流れる信号からパターンを検出した際に発生した例外処理は低次の処理を中断することなく、結果を高次のインタフェース群に振り分けて渡すことにする。
0484デフォルトの名無しさん
05/02/12 16:02:270485デフォルトの名無しさん
05/02/12 17:06:310486デフォルトの名無しさん
05/02/12 20:20:21てことは、一番のCコンパイラはアセンブラで書かれてたりしたのか?
0487デフォルトの名無しさん
05/02/12 20:22:470488デフォルトの名無しさん
05/02/12 20:32:09ハンドコンパイルだったと思う
0489デフォルトの名無しさん
05/02/13 21:00:03実はインタープリタを書くだけでよい。
くわしくは
二村射影(futamura projection)・部分評価(partial evaluation)
0490デフォルトの名無しさん
05/02/13 21:13:32ご存知でしたら教えて欲しいのですが、"offline" partial evaluationの
(onlineに対する)画期性はどういうところだったんでしょう?
0491デフォルトの名無しさん
05/02/13 21:13:43それは言いすぎじゃね?
0492デフォルトの名無しさん
05/02/14 11:37:36どこの大学院がもっとも進んでいるのでしょうか
ちなみにコンパイラについては全くの素人(本でかじったぐらい)
です
0493デフォルトの名無しさん
05/02/14 11:59:37その程度でどうやって研究計画書書くの?
0494デフォルトの名無しさん
05/02/14 13:26:27本でかじった以上の事は研究しないと無理だよ。
この分野は中間点が無さ過ぎる。
0495デフォルトの名無しさん
05/02/14 14:05:43どの言語でそのインタプリタを作るのかが問題なんだよ
0496デフォルトの名無しさん
05/02/14 14:19:46ないのと一緒。
最近はどんな研究がよくされているのか、とか、注目されているのはどんなことなのか
という事も知らなくてはいけない。
0497デフォルトの名無しさん
05/02/14 15:11:470498デフォルトの名無しさん
05/02/14 15:42:41学部3年ぐらい?
図書館行って
「情報処理学会論文誌 プログラミング」
という本を探す。
その中から興味をもてそうな研究を選ぶ。
著者のうち、
肩書きが大学の教授とか助手とかになってる人をピックアップ。
その人が著者になってる論文を見て(googleとかで探す)、
興味がもてそうなものが多ければ、
その人の研究室で決まり。
入院試験受ける前に
受かったら研究室に入れてくれるようにネゴっておこうね。
0499デフォルトの名無しさん
05/02/14 17:00:49速度重視ならC/C++だろうし、
実装で楽したいなら、
パーサジェネレータから決めるとか。
デザインパターンのインタプリタ・パターンを使うなら、
作りたい言語と同じ制御構造をもったものを選ぶ方がよい。
例外やtry〜finallyとか。
0500デフォルトの名無しさん
05/02/14 19:08:25LISPの文法のBNFを探しているのですが、見つかりません。
LISPのBNF定義が載っている、本またはWebページがありましたら、教えてください。
よろしくお願いします。
0501デフォルトの名無しさん
05/02/14 19:35:380502デフォルトの名無しさん
05/02/14 20:00:50ググったら一番上に出てきたけど
0503デフォルトの名無しさん
05/02/14 20:10:48"common lisp" (syntax OR parser OR source)でGoogle検索。
0504500
05/02/14 21:54:00ご教示ありがとうございます。
Googleの結果を開けて回ったところ、日本Lispユーザ会というところに出ました。
このなかにANSIの規格書へのリンクがあったので、こちらを探してみることにします。
0505デフォルトの名無しさん
05/02/14 22:13:11"lisp bnf"でウェブ全体から検索にして検索してみ
0506500
05/02/14 22:44:22「The BNF Web」の「BNF Index of LISP」というページが一番に出てきました。
結構簡単な文法なんですね。これなら、すぐBISONに書き込めそうです。
お手数をおかけしました。
0507デフォルトの名無しさん
05/02/14 23:14:42アホなのかエイホなのか
0508デフォルトの名無しさん
05/02/15 00:17:58lispにbisonはoverkillじゃないだろうか。
要は(read)を書くだけでしょ?
0509デフォルトの名無しさん
05/02/15 01:55:44魚雷廷沈めるのに大陸間弾道弾使う見たいなもんじゃねぇの?
0510デフォルトの名無しさん
05/02/15 06:00:58やっと>>476に対する適切なレスがw
0511デフォルトの名無しさん
05/02/15 10:43:04ドクターはともかく、マスターではネゴっただけで希望の研究室に入れるとは……
0512デフォルトの名無しさん
05/02/15 11:59:31おぃおぃ・・・・
まっいいか。
0513デフォルトの名無しさん
05/02/15 13:15:44っていうかOS屋さんの存在自体がもう消滅してるか。
0514デフォルトの名無しさん
05/02/15 13:35:31OSってまさかWindowsみたいなものを想像しているわけ?
0515デフォルトの名無しさん
05/02/15 20:27:58ごめん、PEは専門じゃないので…
ここより関数型言語スレの方が詳しい人多いかも。
0516デフォルトの名無しさん
05/02/15 22:51:21>>481
実はインタープリタを書くだけでよい。
くわしくは
二村射影(futamura projection)・部分評価(partial evaluation)
515 名前:デフォルトの名無しさん[sage] 投稿日:05/02/15 20:27:58
>>490
ごめん、PEは専門じゃないので…
PEのことを知らずに書いてたのかよ!
0517デフォルトの名無しさん
05/02/16 05:48:52いやもうOSに目新しい技術もないし、実装でもだいたい
メジャーどころが決まってるような感じに思ってたけど。
組み込みにLinuxやNetBSDに手を入れて使うようじゃ、
マイナーなOS屋さんのやること、もうないじゃん。
0518デフォルトの名無しさん
05/02/16 16:06:410519デフォルトの名無しさん
05/02/16 16:07:120520デフォルトの名無しさん
05/02/16 16:23:510521デフォルトの名無しさん
05/02/16 23:48:530522デフォルトの名無しさん
05/02/19 13:16:420523デフォルトの名無しさん
05/02/19 13:27:360524デフォルトの名無しさん
05/02/19 23:26:230525デフォルトの名無しさん
05/02/20 00:36:170526デフォルトの名無しさん
05/02/20 06:01:34Perlはどうか知らんけど、一般に
へんてこな言語は字句解析器と構文解析器が
仲良くして構文解析をするんだよ。
そして…フラグの洪水に溺れるんだ…
0527デフォルトの名無しさん
05/02/20 19:58:56すんません。最後の1行が分かりません。
どういうことですか?
0528デフォルトの名無しさん
05/02/20 20:19:320529デフォルトの名無しさん
05/02/20 21:03:20自動で生成してくれるからいいけれど、
それ以降の部分は >>526 が手がけなければならないので、
その結果フラグの洪水となる、という話だと思う。
0530デフォルトの名無しさん
05/02/20 21:21:03レクサとパーサで状態を渡さないといけないのでフラグをさわりまくりになる。
0531デフォルトの名無しさん
05/02/20 21:22:36「それ以降」じゃなくて、構文解析中の話じゃない?
構文解析の経過に応じて字句解析の動作を変えないといけなくて、
経過がどうだったかを大量のフラグで管理しとかないといけない、
みたいな。
字句解析で先読みをどんどんやらせて、
それによって構文解析の動作を変えたいなんてのもあるかな。
0532 デフォルトの名無しさん
NGNG( 1 )関数の引数として 1 次元配列を渡せるように機能拡張する.渡し方は C言語の方法に習い, すなわち, 配列の要素全体のコピーを渡すのではなく, 配列の先頭の番地を渡す.
( 2 )変数の「参照渡し」を実現する.「参照渡し」つまり, 変数を関数の実引数にしたとき, 変数の中身ではなく変数自体の番地を渡すことにより, 呼び出された関数の中から呼び出し元の変数の内容を更新できるようにする.
という 2 つの機能を追加させることを考えているのですが記述方法が解らず悩んでいます.解りましたらアドバイスをお願いいたします.
0533デフォルトの名無しさん
05/02/21 22:06:370534デフォルトの名無しさん
NGNGすみません!! > 532 に付け足しで, コンパイラのソースコードは,
http://book.gihyo.co.jp/s-com/ からダウンロードできるようになっております.
この本を読んだことがない方でも,
上記 2 問に対する拡張方法のプログラムが解る方からの返信もお待ちしております
0535デフォルトの名無しさん
05/02/21 23:45:20みなそうなる傾向にあるのではないかな?
逆にいうと、(ちょっと飛躍しすぎかも知れんが)レクサとパーサ
による解決方法自体が、やや時代遅れになりつつあるのかも。
0536デフォルトの名無しさん
05/02/22 00:00:01ところで今の言語で、パースの難しい構文(の組み合わせ)って例えば何だろう?
0537デフォルトの名無しさん
05/02/22 00:18:590538デフォルトの名無しさん
05/02/22 01:36:410539デフォルトの名無しさん
05/02/22 09:57:08整数型を引数に取る関数と
文字列型を引数に取る関数は実装されてるみたいだから、
そこから類推して配列型を引数に取るものを追加すればいい。
function()とfactor()中の関数呼び出しを実行してる箇所を
取っ掛かりにハック。
(2)は(1)ができてからにしろ。
0540デフォルトの名無しさん
05/02/22 10:03:03むしろ最近の言語の方が使用するケースは少ないかと
文脈依存なしでも必要十分な程度の複雑な文法は作れる
0541デフォルトの名無しさん
05/02/22 10:07:07C#とJava以外になんかある?
0542デフォルトの名無しさん
05/02/22 11:43:57ラベル名に語彙の種別をつける様な文脈依存はあるが、
フラグを引っ掻き回すのは行単位でパースしていた時代の物でもない限りもう無いと思うが……
0543デフォルトの名無しさん
05/02/22 12:11:560544デフォルトの名無しさん
05/02/22 19:04:440545デフォルトの名無しさん
05/02/22 20:39:50一番はる、Ru、る、
C++
0546デフォルトの名無しさん
05/02/23 16:12:020547デフォルトの名無しさん
05/02/23 18:15:11教科書的な字句解析・構文解析が通用するような言語ってどのくらいある?
Pascal…は簡単なんだっけ。
0548デフォルトの名無しさん
05/02/23 18:21:09関係ないだろ。文法のクラスの問題。
0549デフォルトの名無しさん
05/02/23 18:46:44教科書的なクラス(=LR(1)?)で収まる言語を聞いてるんだと思うが。
>>547
とりあえずCはダメだね。
typedefされた識別子は、lexerで識別子じゃなく型名かなんかにしないといけないから。
JavaもLR(1)では無理だった気が。
0550デフォルトの名無しさん
05/02/23 18:49:55文法クラスに納まっている希ガス。
0551デフォルトの名無しさん
05/02/23 21:27:11>とりあえずCはダメだね。
それをそのクラスに入れるために、スキャナなんてな物を考えるのであって
>教科書的な字句解析・構文解析
という点について考えたら、その回答はギャグとしか思えないのだが……
0552デフォルトの名無しさん
05/02/23 22:33:05一意にならない場合があるけど
0553デフォルトの名無しさん
05/02/23 22:42:52関数のポインタに掛かってる?
それとも関数自身?
__stdcall f() {
}
という書き方もできるということは関数に掛かってるんだろうけど、
関数ポインタの場合の装飾子の位置が謎。
(*(int (__stdcall *)())g)() = (int (__stdcall *)())f;
0554デフォルトの名無しさん
05/02/23 22:42:58そして、大抵実用的でない言語のような気がするw
0555デフォルトの名無しさん
05/02/23 22:47:54int (__stdcall *g)() = (int (__stdcall *)())f;
パースする側から見ると凄い変な気がする。
()からずいぶん離れているのに__stdcallは関数に掛かるという。
0556549
05/02/23 23:16:39ごめん。なに言ってるかマジわかんない。
「C言語は教科書的」って言ってるの?
C言語では
「(a)+b」は
typedef a されてればキャストだし
そうでなければ足し算ってのは知ってる?
0557デフォルトの名無しさん
05/02/23 23:28:02Cに単項の+演算子なんてあったっけ?
-ならわかるけど。
0558デフォルトの名無しさん
05/02/23 23:34:01つうか、-でもいい話じゃないのか?
0559デフォルトの名無しさん
05/02/23 23:40:24「int const*」がひとまとまり。
externはpにかかる。
0560デフォルトの名無しさん
05/02/23 23:49:28もちろん知っている
bisonの教科書100回よめ、実装なんか簡単だ
0561547
05/02/23 23:57:27字句解析と構文解析がなかよくしてフラグの洪水とか、
bisonがどういうオートマトン出力するか気にしながらトリッキーなコード書くとか
そういうことしなくてもパースできる、みたいな?
LALR(1)の教科書数回読んだだけで解析器作れるようなのを意図してました。
とりあえずCはダメという認識でいいと思います。
0562デフォルトの名無しさん
05/02/23 23:59:42机上の空論ばかりやってるからそうなるんだよ、
実践してみろ、どうってことはないし、トリッキーでもないし
ましてやオートマトンなんか考える必要もない
0564デフォルトの名無しさん
05/02/24 10:37:590565デフォルトの名無しさん
05/02/24 14:46:580566デフォルトの名無しさん
05/02/24 19:54:16lisp。実用言語だ。汎用ではないが。
0567デフォルトの名無しさん
05/02/24 21:34:13実用性のない言語の典型例だなw
0568デフォルトの名無しさん
05/02/24 21:36:13多量の yacc ルールが必要ですかね?
0569デフォルトの名無しさん
05/02/24 21:43:23ああいうのはlex(相当)の方が難しいんじゃないかな。
分かち書きを強制とかしない限り。
0570デフォルトの名無しさん
05/02/24 23:56:05実用性がある言語の典型だろ。
0571デフォルトの名無しさん
05/02/25 00:39:39できない奴の典型だな。
0572デフォルトの名無しさん
05/02/25 00:40:040573デフォルトの名無しさん
05/02/25 00:43:01schemeならまだ説得力があったがな。
0574デフォルトの名無しさん
05/02/25 00:47:34ろくな反論もできない書き込みでわかります
0575デフォルトの名無しさん
05/02/25 03:07:150576デフォルトの名無しさん
05/02/25 05:21:01言語仕様としては良い。
0577デフォルトの名無しさん
05/02/25 05:21:560578デフォルトの名無しさん
05/02/25 15:00:25識別子をちょっと凝って切り出すだけでしょ?(lex)
圧倒的に文法規則の方が難しいと思われるが?
0579デフォルトの名無しさん
05/02/26 00:22:58やることちがうんだし。
しかしなでしこの構文ってそんなに複雑なんかね。
((式 助詞)* 動詞 句読点)* 程度かと思ってた。
0580デフォルトの名無しさん
05/02/26 10:41:59上yaccすら乗せるのがきついため、XMLの字句解析から初めて構文解析を
しようと思うのですがyacc等使わない場合皆さんはどのようなスタイルで
書き始めますか?yacc漬けになっていて、スクラッチで字句解析構文解析
どうしようかすげー悩んでます。
0581デフォルトの名無しさん
05/02/26 11:00:36贅沢いっちゃいかん
0582デフォルトの名無しさん
05/02/26 13:25:44なんとも不思議な使い方だね……
俺だったらスキャナは使ってもパーサは使わないな
ま、それはともかくフルスクラッチすればいいんじゃない、
速度さえ気にしなければXMLのパースは簡単だし、考える事なんか無いし。
0583Rubyist!
05/02/26 18:04:390584デフォルトの名無しさん
05/02/26 18:10:130585デフォルトの名無しさん
05/02/26 19:26:01ttp://www5f.biglobe.ne.jp/~rebro/DSCF0042kuri].JPG
0586デフォルトの名無しさん
05/02/27 00:34:220587デフォルトの名無しさん
05/02/27 19:49:200588デフォルトの名無しさん
05/02/27 20:11:02その通り。
0589デフォルトの名無しさん
05/02/27 21:21:340590デフォルトの名無しさん
05/02/28 00:22:390591デフォルトの名無しさん
05/02/28 01:03:320592デフォルトの名無しさん
05/02/28 23:08:34同意
0593デフォルトの名無しさん
05/03/01 10:29:26今に始まったことじゃない。
0594デフォルトの名無しさん
05/03/01 13:55:330595デフォルトの名無しさん
05/03/01 22:31:34(ry
0596デフォルトの名無しさん
05/03/01 23:06:22いくらなんでもそれは略しすぎだろう
0597デフォルトの名無しさん
05/03/02 02:53:210598595
05/03/02 22:15:540599デフォルトの名無しさん
05/03/02 22:29:040600デフォルトの名無しさん
05/03/03 12:24:260601デフォルトの名無しさん
05/03/03 14:45:44おまえもかよ!
0602598
05/03/03 21:35:10お前が一番の(ry
0603デフォルトの名無しさん
05/03/03 21:44:13この辺あぼーんしました。
0604デフォルトの名無しさん
05/03/03 21:50:40この辺あぼーんしました。
0605デフォルトの名無しさん
05/03/04 18:57:57なんか一人がデカイ声で「貴様は〜〜〜!!だから2ちゃんねるで馬鹿に
されるというのだ〜〜〜!!この〜〜〜!」
ともう片方の首を絞めました。
絞められた方は「ぐええぇーー!悪霊退散悪霊退散!!」と十字を切っていた。
割と絞められているらしく、顔がドンドンピンクになっていった。
渋谷でもう一人、仲間らしい奴が乗り込んできてその二人に声をかけた。
「お!忍者キッドさんとレオンさん!奇遇ですね!」 「おお!そういう君は****(聞き取れず。何かキュンポぽい名前)ではないか!
敬礼!」
「敬礼!出た!敬礼出た!得意技!敬礼出た!敬礼!これ!敬礼出たよ〜〜!」
俺は限界だと思った。
0606マイク ◆yrBrqfF1Ew
05/03/04 19:19:520607デフォルトの名無しさん
05/03/04 21:19:26もう一度>>1のテンプレ貼っておくぞ!
プログラミング言語処理系の開発に興味のある人達のスレッドです。
字句解析・構文解析から,データフロー解析,ループ並列化,タスク並列化,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン等各種最適化,
それにVM,GC,JIT,リンク時最適化,動的バイナリ変換などなど。
意味論に関する話題も歓迎です。
0608デフォルトの名無しさん
05/03/05 13:50:23次スレはシンプルに初代の1の内容
「yaccやlexの使い方やら言語仕様やらの話題。 」
に戻すかね、周辺の話題はスレの流れで勝手に入ってくるに任せる感じで。
0609デフォルトの名無しさん
05/03/05 14:21:35英語とOOP はアリ
0610デフォルトの名無しさん
05/03/05 14:25:380611デフォルトの名無しさん
05/03/05 19:26:030612デフォルトの名無しさん
05/03/05 19:29:45諦めろ。>>609は日本語を理解してないぞ。
0613デフォルトの名無しさん
05/03/05 23:28:510614デフォルトの名無しさん
05/03/05 23:37:140615デフォルトの名無しさん
05/03/07 10:04:09構文解析およびyacc,lexx のスレ と
>>1の内容みたいなスレを分けた方がいいんじゃないの?
0616デフォルトの名無しさん
05/03/07 10:09:190617デフォルトの名無しさん
05/03/07 10:36:04最適化の話は一つ一つが長くなるとは思うが今まで一度も出てきてない気がするの俺だけ?
0618デフォルトの名無しさん
05/03/07 11:05:530619デフォルトの名無しさん
05/03/07 12:43:32被りまくりの上に、それほどの話題は存在しない、そんな必要はない
ただでさえ人口が少ない上、部外者だらけのこのスレをこれ以上薄めてどうする。
0620デフォルトの名無しさん
05/03/07 13:48:330621デフォルトの名無しさん
05/03/07 22:53:01インライン展開の話をすることを許可する。
さぁ、存分にやりたまえ。
0622デフォルトの名無しさん
05/03/07 23:17:52インライン展開ってさ、キャッシュの容量が小さすぎるCPUで泣いたことない?
組み込み系やってないとわからないかもしれん(つかイマドキのPCってすごすぎ)
0623デフォルトの名無しさん
05/03/08 11:06:18どうぞどうぞ、ガンガン書いちゃって下さい
0624デフォルトの名無しさん
05/03/08 15:14:38その淫乱な姿に欲情した
こんなに濡れてるよ体は正直だね(ry
0625デフォルトの名無しさん
05/03/08 20:06:10・A・ イクナイ
0626デフォルトの名無しさん
05/03/09 23:48:530627デフォルトの名無しさん
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;
}
を導き出すには、フロー解析しないとダメでしょうか?
または別に何か簡単な方法があるでしょうか。
0628デフォルトの名無しさん
05/03/10 02:32:350629デフォルトの名無しさん
05/03/10 05:38:270630デフォルトの名無しさん
05/03/10 23:09:55大抵は性能劣化を招く罠。
0631デフォルトの名無しさん
05/03/11 00:37:340632デフォルトの名無しさん
05/03/11 00:55:38スマンが文脈からパース時の話なのか実行時プリフェッチの話なのかワカランのでもう少しフォローしてくれ。
0633デフォルトの名無しさん
05/03/11 01:14:260634デフォルトの名無しさん
05/03/11 02:59:38ってのが統一的でいいんじゃないかしらん。
ていうかなぜパーサを手で書かなきゃいかんのかと小一時間(ry
0635デフォルトの名無しさん
05/03/11 21:49:000636デフォルトの名無しさん
05/03/11 22:46:590637デフォルトの名無しさん
05/03/12 00:40:12Boost関数で作るほうがすげー早いよ?
あとメインメモリ500kぐらいの環境だとそんな荷物もてないよ?
0638デフォルトの名無しさん
05/03/12 08:56:58クロスコンパイルするのが普通だわな
0639デフォルトの名無しさん
05/03/12 11:30:03メインメモリ1M位のリッチな環境ならありますがクロスコンパイルは普通に出来ますか?
0640デフォルトの名無しさん
05/03/12 11:55:355万円くらいでメインメモリ512MBのx86マシンを自作して出直して下さい。
0641デフォルトの名無しさん
05/03/12 11:56:54∧__,,∧
(´・ω・`)
(つ夢と)
`u―u´
あなたのすぐ後ろに落ちていましたよ?
0642デフォルトの名無しさん
05/03/12 12:43:48メインメモリ1Mぐらいの組み込み機器で
小さいスクリプト言語が動けば便利かも試練
0643デフォルトの名無しさん
05/03/12 12:47:47入力装置がボタン数個だろうから、
スクリプト言語なんてあっても書けないぽ。
0644デフォルトの名無しさん
05/03/12 22:53:26スタンドアローン開発する気?
0645デフォルトの名無しさん
05/03/13 00:00:58そうじゃなければスクリプトである必要がないし。
0646デフォルトの名無しさん
05/03/13 12:05:290647デフォルトの名無しさん
05/03/13 12:21:090648デフォルトの名無しさん
05/03/13 12:41:33よく最大の利点と言われるのは手軽にプログラムが書けること。
ポータビリティが高いことも多い。
プログラマが自分のために書くプログラムは全部C言語とかですか?
0649デフォルトの名無しさん
05/03/13 13:44:46646や648よ。
0650デフォルトの名無しさん
05/03/13 14:21:41教えられなくても分かるというやつは
天才か電波
0651デフォルトの名無しさん
05/03/13 14:26:43少なくとも京ぽんのbookmarkletは激しく便利。
0652デフォルトの名無しさん
05/03/13 14:28:04ゆとり教育だな
0653デフォルトの名無しさん
05/03/13 15:21:31>>646=>>648=俺だが、
「メインメモリ1Mぐらいの組み込み機器」では
手軽に書けることやポータビリティに意味はないと?
0654デフォルトの名無しさん
05/03/13 15:57:56「入力デバイスがなくてスクリプト書けねぇよ」
「スタンドアロンで開発するわけがありません」
「えーできないのー?ユーザが使えなきゃ意味ないじゃん」
「んなこたない」
「利点を具体的にいってみろよー」
「手軽さとポータビリティだろが馬鹿そんくらい分かれ」
「言われる前に分かったらエスパーだっつーの」
「手前でしらべろボケ」
「特にメモリ1M組み込み機器に限った話じゃないだろ」
「組み込み機器にあれば便利だなあって話だ」←いまここ
結論は最初の一行。
0655デフォルトの名無しさん
05/03/13 16:16:28>メインメモリ1Mぐらいの組み込み機器にスクリプト言語あれば便利だなあ
クレクレ君はスレ違いです。
0656デフォルトの名無しさん
05/03/13 16:21:420657デフォルトの名無しさん
05/03/13 16:43:01その 1MB を全部コンパイラ関係(中間ファイル置き場も含む)に使ったら、
組み込み機器の本業が動かんでしょ。
0658デフォルトの名無しさん
05/03/13 17:03:40640Kbyteで全部動いた時代が懐かしいな、まあどうでもいいが雑談はマ板でやったらどうだい?
0659デフォルトの名無しさん
05/03/13 17:51:23ポータビリティの意味無いじゃん。
0660デフォルトの名無しさん
05/03/13 18:14:520661デフォルトの名無しさん
05/03/13 19:28:42ものによってはネイティブのマシン語より、
VM+バイトコードの方が
コード量が減るとかいう現象があったような。
さすがCISC。
0662デフォルトの名無しさん
05/03/13 21:12:23命令細かくすりゃマシンコードと変わらなくなる。
0663デフォルトの名無しさん
05/03/14 02:02:24あ、話題としてはおもしろいかも。こういう話に詳しい人いる?
Java VM なんかはバイトコードのサイズが小さくなるように設計されてるから
最終的に動かすアプリケーションのサイズが大きければ大きいほど
ネイティブコードに比べて有利になりやすいんじゃないかな。
0664デフォルトの名無しさん
05/03/14 02:29:27> 最終的に動かすアプリケーションのサイズが大きければ大きいほど
実用に耐える速度を出すためにJITを使うからなぁ、メモリ上の足跡はかなり大きいぞ。
まぁスタックマシンだからVM用のコードが小さいのは本当だけどさ。
0665デフォルトの名無しさん
05/03/14 02:57:43これまでの話の中でも速度は大して重視されてこなかったような。
0666デフォルトの名無しさん
05/03/14 03:30:010667デフォルトの名無しさん
05/03/14 03:48:390668デフォルトの名無しさん
05/03/14 04:55:340669デフォルトの名無しさん
05/03/14 08:48:490670デフォルトの名無しさん
05/03/14 17:15:370671デフォルトの名無しさん
05/03/14 17:16:35できない人もいる
0672デフォルトの名無しさん
05/03/14 17:37:17嫌いな奴もいるってこと?
0673デフォルトの名無しさん
05/03/14 17:47:030674デフォルトの名無しさん
05/03/14 19:04:430675デフォルトの名無しさん
05/03/14 20:09:040676デフォルトの名無しさん
05/03/14 20:17:342.できないやつを馬鹿にして優越感に浸るやなやつ。
3.誤爆。
0677デフォルトの名無しさん
05/03/14 21:53:560678デフォルトの名無しさん
05/03/14 21:58:130679デフォルトの名無しさん
05/03/14 21:59:010680デフォルトの名無しさん
05/03/14 22:01:45誰?
お前の名前か?
頭大丈夫?
0681デフォルトの名無しさん
05/03/14 22:03:59作れない奴は読み通せないから。
>>670
高卒がみんな高校の学習指導要領程度の英語を読み書き聞き話しできるかという質問と同じじゃないかな。
0682デフォルトの名無しさん
05/03/15 00:12:51激しくすれ違いとでも言って欲しいのか? キモヲタくん。
0683デフォルトの名無しさん
05/03/15 00:30:310684デフォルトの名無しさん
05/03/15 00:46:210685デフォルトの名無しさん
05/03/15 00:49:41Javaのコードと実質説明あんまりマッチしてないよ。
実際コーディングって泥臭いし、やり方は人それぞれ書けちゃうから。
本は定石を知るためにあると思うけどな。まぁでも、できるやつは本見ながら
適当に実装できるのは事実。
0686デフォルトの名無しさん
05/03/15 00:50:330687デフォルトの名無しさん
05/03/15 00:52:430688デフォルトの名無しさん
05/03/15 11:26:49曰く、「おれはプログラムなんかを組むために情報学科に来たんじゃない」だと。
0689デフォルトの名無しさん
05/03/15 12:37:27その本読んだらわかるけど、まともな本じゃないよ。いわゆる俗本。
0690デフォルトの名無しさん
05/03/15 12:41:160691デフォルトの名無しさん
05/03/15 13:51:290692デフォルトの名無しさん
05/03/15 14:09:29ふらっと手にとってレジに持っていきそうになったが、
あの喩えのおかげで思いとどまる事ができた。いわば踏み絵。
0693デフォルトの名無しさん
05/03/15 14:13:38俺も京大だけど、経験的にそいつよりおまえの方がプログラミング能力低いわ。
0694デフォルトの名無しさん
05/03/15 14:26:470695デフォルトの名無しさん
05/03/15 14:30:110696デフォルトの名無しさん
05/03/15 15:23:02まぁ、言わんとすることはなんとなく分かるけど、そいつはホントにプログラ
ミング言語の1つもまともに使えないよ.なんだかんだ行っても、情報学科の
底辺のダメさ加減はすごい.
0697デフォルトの名無しさん
05/03/15 15:47:55高校卒業時が人生のピークでしたか?
0698デフォルトの名無しさん
05/03/15 17:44:50これがほんとの三兄弟
0699デフォルトの名無しさん
05/03/15 17:53:50.(公) (益)
乂 乂
ジャンガジャンガジャンガジャンガジャーン
ヽ(公)ノ
ヽ(益)ノ
0700デフォルトの名無しさん
05/03/15 20:43:24なんで怒ってんの?
0701デフォルトの名無しさん
05/03/15 21:02:440702デフォルトの名無しさん
05/03/15 21:06:060703デフォルトの名無しさん
05/03/15 21:34:570704デフォルトの名無しさん
05/03/15 21:37:290705デフォルトの名無しさん
05/03/15 22:32:060706デフォルトの名無しさん
05/03/15 22:39:100707デフォルトの名無しさん
05/03/15 23:35:36ttp://memphis.compilertools.net/
ttp://www.cs.princeton.edu/software/iburg/
lex/yaccで作ったプログラムから呼ばれるバックエンドを
簡単に作れるものです。結構面白いよ。
0708デフォルトの名無しさん
05/03/17 14:25:170709デフォルトの名無しさん
05/03/17 23:24:57素の通り、
航空機械出た奴は、そりゃ人力飛行機はつくれるだろう。
ただし、(ry
0710デフォルトの名無しさん
05/03/17 23:28:090711デフォルトの名無しさん
05/03/17 23:44:490712デフォルトの名無しさん
05/03/18 00:17:380713デフォルトの名無しさん
05/03/18 00:21:080714デフォルトの名無しさん
05/03/18 00:27:13コンパ・イラ
0715デフォルトの名無しさん
05/03/18 04:24:480716デフォルトの名無しさん
05/03/18 05:32:420717デフォルトの名無しさん
05/03/18 05:48:51あんたはりんご本よんだら、携帯コンパイラ作れる?
0718デフォルトの名無しさん
05/03/18 06:09:30>>712
なんでそのりんご本とやらに限定されなきゃならんのか理解不能だが。
0719デフォルトの名無しさん
05/03/18 06:30:47馬鹿ですね。
0720デフォルトの名無しさん
05/03/18 06:38:210721デフォルトの名無しさん
05/03/18 07:23:470722デフォルトの名無しさん
05/03/18 19:29:47携帯コンパイラくらい簡単に作れる気になるだろ。
そして2チャンネルに「お前らそのくらいも作れんの?」と書き込めば
作った気になるだろ。
0723デフォルトの名無しさん
05/03/18 19:33:12脳内妄想はどうでもいいから、現物を作れるのか?
0724デフォルトの名無しさん
05/03/18 19:37:19簡単に作れる。(しかし、作ったことは無い。)
といったところだろう。
0725デフォルトの名無しさん
05/03/18 19:40:16携帯単体でコンパイルして実行できるものが?へえー。
0726デフォルトの名無しさん
05/03/18 20:41:51もしかしてそれが難しいとか思ってる?
0727デフォルトの名無しさん
05/03/18 20:50:43ああ。
セキュリティ上、プログラムが作成したデータを実行する事ができないようになってるからな。
0728デフォルトの名無しさん
05/03/18 20:50:500729デフォルトの名無しさん
05/03/18 20:53:44どうやんの?
0730デフォルトの名無しさん
05/03/18 22:12:220731デフォルトの名無しさん
05/03/19 01:48:41判るよ(藁
0732デフォルトの名無しさん
05/03/19 14:11:18CPUが分かればマシン語も分かんだろうがこのボケがぁー!
0733デフォルトの名無しさん
05/03/19 15:21:450734デフォルトの名無しさん
05/03/19 15:23:57別にマシン語とは限ってないでしょ。
綾本ではスクリプトだけどコンパイルして実行してるよ。
それ以前にケータイ上で動くスクリプト作って
何に使うのかってほうがよっぽど疑問なんだけど。
良い使い道ある?
0735デフォルトの名無しさん
05/03/19 15:48:560736デフォルトの名無しさん
05/03/19 16:11:28ユビキタスがはやりです
0737デフォルトの名無しさん
05/03/19 19:27:16ごめん、徹夜明けでママン語に見えた。orz
0738デフォルトの名無しさん
05/03/19 20:39:46はぁそうですか。で?
0739デフォルトの名無しさん
05/03/19 22:08:530740デフォルトの名無しさん
05/03/20 14:22:33いちいち反応すんな、ボケェ。
0741デフォルトの名無しさん
2005/03/24(木) 23:21:46侍ってなにの例えですかね?
0742デフォルトの名無しさん
2005/03/24(木) 23:24:510743デフォルトの名無しさん
2005/03/24(木) 23:26:58普通に説明すれば分かるものを、
例え話を持ち出して読者を混乱させているw
0744デフォルトの名無しさん
2005/03/24(木) 23:31:13LISPが良いですか?
括弧に抵抗はありません。
Forthはさっぱりわかりません。
簡単な制御に使います。
0745デフォルトの名無しさん
2005/03/24(木) 23:43:310746デフォルトの名無しさん
2005/03/24(木) 23:45:24じゃね、またね。
0747デフォルトの名無しさん
2005/03/24(木) 23:46:46Lispは実際に実装しようと思うと面倒だから、Schemeにしといたら?
参考になる小さなSchemeのプログラムがいっぱいあるよ。1000行ぐらいのやつとか。
0748デフォルトの名無しさん
2005/03/25(金) 00:03:390749デフォルトの名無しさん
2005/03/25(金) 19:22:36ブロック単位にした方が良いですよね。
最適な数がわからないから、1MBぐらい一気に配列として確保しておいて、
あとは無くなり次第reallocでしょうか。
GCは簡単そうなマーク&スイープで作ります。
継続はたぶん使わないので、末尾再帰と適当な大域ジャンプだけ
取り付けることにします。
0750デフォルトの名無しさん
2005/03/25(金) 19:51:290751デフォルトの名無しさん
2005/03/25(金) 22:10:54> セルを確保する場合、1つ1つmallocするよりも、
> ブロック単位にした方が良いですよね。
ここまでいいのに
> あとは無くなり次第reallocでしょうか。
なんでこうなるんだorz
ちょっと遠回りのようでも、人の作った例をいろいろ見て勉強するのがいいよ。
0752デフォルトの名無しさん
2005/03/27(日) 18:05:13とりあえずは、りん(ry
0753デフォルトの名無しさん
2005/03/27(日) 19:40:030754デフォルトの名無しさん
2005/03/27(日) 19:42:10低レベル過ぎて困っちゃうんだ。ボクみたいにレベルが高い人だと物足りないって感じ?
0755デフォルトの名無しさん
2005/03/28(月) 09:31:070756デフォルトの名無しさん
2005/03/28(月) 20:36:410757デフォルトの名無しさん
2005/03/28(月) 21:11:46結構速くて満足してます。
0758デフォルトの名無しさん
2005/03/29(火) 00:27:36木オートマトンについて解りやすい本ないでしょうか?
0759デフォルトの名無しさん
2005/03/29(火) 13:05:20http://www.grappa.univ-lille3.fr/tata/
Tree Automata Techniques and Applications
はどうでしょう。
わかりやすいかどうかは知らない。
0760デフォルトの名無しさん
2005/03/30(水) 20:00:29胴衣
洩れ的には大変参考になつた。
新しいことをちょっぴり覚えて興奮した。
0761デフォルトの名無しさん
2005/03/31(木) 23:45:120762デフォルトの名無しさん
NGNGむずい.1章で挫折しますた.
0763デフォルトの名無しさん
NGNGそういう意味では、存在価値があると思う。
行きつけの書籍店でソファーに座りながら読ませていただきました。
0764デフォルトの名無しさん
2005/04/03(日) 01:00:45ゴッルァ〜!
慣れ慣れしく「タン」付けすんな!
0765デフォルトの名無しさん
2005/04/03(日) 15:43:360766デフォルトの名無しさん
2005/04/03(日) 16:11:280767デフォルトの名無しさん
2005/04/04(月) 03:51:42参考にしてないだけだろうw
0768デフォルトの名無しさん
2005/04/04(月) 05:07:490769デフォルトの名無しさん
2005/04/04(月) 22:46:06LALR(1)文法で表現できる言語を教えてください。
0770デフォルトの名無しさん
2005/04/04(月) 23:37:55教えてくださいって聞いてると思えばいいのか?
0771デフォルトの名無しさん
2005/04/05(火) 00:59:45みかん畑で説明できる言語を教えて下さい。
0772デフォルトの名無しさん
2005/04/05(火) 01:07:300773デフォルトの名無しさん
2005/04/05(火) 23:58:09相手にするなw
0774デフォルトの名無しさん
2005/04/06(水) 14:45:33綾タソってハカーってことでよろしいか?
コン・パイラ君は、要所要所で、
虎の巻という、虎本か緑竜本か赤竜本かは特定できないが、読んでるようだ。
0775デフォルトの名無しさん
2005/04/06(水) 14:46:380776デフォルトの名無しさん
2005/04/06(水) 20:15:100777デフォルトの名無しさん
2005/04/06(水) 21:23:54あれが、ドラゴンブックだったのかorz
でも何故りんご酒の作り方までのってるんだ???
0778デフォルトの名無しさん
2005/04/07(木) 01:55:04つうか虎の巻のところだけ、中田先生が助け舟を出してるように見えたんだけど。
あるいは授業ノートの写しとか。
0779発売予定
2005/04/07(木) 14:38:38監修 中田育男 著 麻奈&綾 分売不可
第一回配布 ジ アート オブ コンパイラVolI 字句解析 \5600
\"[^\"]*\"だと
"I said \"hello world\" "を正しく認識してくれません。
0781デフォルトの名無しさん
2005/04/07(木) 21:12:020782デフォルトの名無しさん
2005/04/07(木) 21:40:59ウォ〜!!
こんどは、マナも出すのか!
0783デフォルトの名無しさん
2005/04/08(金) 23:00:25lexを使っているとしたら、そんなのは正規表現でがんばるよりも、
スタート条件を使うべきじゃないのか。
0784デフォルトの名無しさん
2005/04/08(金) 23:06:42プリプロセスで取り除いたり置換する以外に、対処しようがないのでしょうか(´・ω・`)
0785デフォルトの名無しさん
2005/04/08(金) 23:14:070786デフォルトの名無しさん
2005/04/09(土) 00:04:50「"I said \"hello world\" "」という入力が
「I said \"hello world\" 」
になるだけじゃないのか?
本当に欲しいのは
「I said "hello world" 」
じゃないの?
\tとか\nとかはいらないの?
0787780
2005/04/09(土) 02:05:11>>781 LEXのなかでの書き方とちがいメタ文字のエスケープをしない表現なのかな?
[\][^']は\nにマッチするけど\"にはマッチしないでいいのかな?
>>783
スタート状態とかいま調べ始めたばかりです。すいません。
>>786
確かにそうですね。
字句解析対象のファイル中に\'を含む文字列があったときエラーを起こさないようにどうすればいいのかにばかり気が向いてました。
最終的にはそう変換された字句値が欲しいんでした。
もうしこしLEXとか勉強してみます。
ありがとうございました。
0788デフォルトの名無しさん
2005/04/09(土) 06:39:360789デフォルトの名無しさん
2005/04/09(土) 10:08:45アヤタン
0790デフォルトの名無しさん
2005/04/09(土) 13:24:20やさしいコンパイラと謳うからには
分かりやすい本なんだろうな?
0791デフォルトの名無しさん
2005/04/09(土) 13:25:06コンパイラを作るだけならそんなに難しくないと思うけど…
0792デフォルトの名無しさん
2005/04/11(月) 09:08:41「イチゴ畑でつかまえて」
0793デフォルトの名無しさん
2005/04/11(月) 21:02:05荒らし認定します
0794デフォルトの名無しさん
2005/04/12(火) 00:00:29あんまり講義はよくないんだよなぁ。
0796デフォルトの名無しさん
2005/04/12(火) 01:08:170797デフォルトの名無しさん
2005/04/12(火) 10:50:270798デフォルトの名無しさん
2005/04/12(火) 12:49:36講義は下手、本を書けばクソ、研究成果は上がらない(駄目押し)なんて奴結構いるし、それよりマシ。
0799大原ゆき
2005/04/12(火) 18:43:030800デフォルトの名無しさん
2005/04/12(火) 19:17:52あんた誰?ハァハァ
0801デフォルトの名無しさん
2005/04/12(火) 19:30:240802デフォルトの名無しさん
2005/04/12(火) 21:02:140803http:// p1172-ipbf01koufu.yamanashi.ocn.ne.jp/~ss.jpg
2005/04/12(火) 21:29:10うはっwwwおkwww??
0804デフォルトの名無しさん
2005/04/12(火) 21:31:470805デフォルトの名無しさん
2005/04/12(火) 21:36:450806デフォルトの名無しさん
2005/04/12(火) 21:58:222チャンネルに書き込むだけで、
2チャンネルが危ないってわけじゃないから心配するな。
0807デフォルトの名無しさん
2005/04/12(火) 22:00:40漏れも火狐使ってるんだけど((;゚Д゚)ガクガクブルブル
いつもはJaneだけど
0808デフォルトの名無しさん
2005/04/12(火) 22:27:03http://www112.sakura.ne.jp/~kaientai-project/creategame.htm
2chスレ
http://game10.2ch.net/test/read.cgi/mmominor/1109935948/
0809デフォルトの名無しさん
2005/04/12(火) 22:29:08プログラマの条件が悪すぎる。
損しかしないじゃないか。
しかもC#って厨臭い…
0810デフォルトの名無しさん
2005/04/12(火) 22:37:17厨が興味示さない言語で流行ったのって無いんだし。
0811デフォルトの名無しさん
2005/04/13(水) 21:55:57> 厨が興味示さない言語で流行ったのって無いんだし。
そ、そうなのか?orz
関係無いけど、厨が興味示す書籍はやはり流行るのか?
0812デフォルトの名無しさん
2005/04/13(水) 22:14:32ただ、厨が興味を示さない書籍で流行ったのは無いよ。
0813デフォルトの名無しさん
2005/04/13(水) 22:21:02v(A)=falseのときv(B)の値は任意
0814デフォルトの名無しさん
2005/04/14(木) 15:50:530815デフォルトの名無しさん
2005/04/14(木) 19:17:40なんとなく納得。
0816デフォルトの名無しさん
2005/04/14(木) 20:06:49とすると、例の畑の本は大流k(ry
0817デフォルトの名無しさん
2005/04/14(木) 21:10:020818デフォルトの名無しさん
2005/04/14(木) 21:18:440819デフォルトの名無しさん
2005/04/14(木) 21:29:070820デフォルトの名無しさん
2005/04/15(金) 00:38:560821デフォルトの名無しさん
2005/04/15(金) 00:40:13この神です。
http://www.cmagazine.jp/contents/200407.html
0822デフォルトの名無しさん
2005/04/15(金) 12:08:21残念〜! dqnは、綾本も理解出来ませんから〜.
つか、ネタふれば?誰もついて来れなかったりして
0823デフォルトの名無しさん
2005/04/15(金) 14:02:26最先端つーても、単に新しい用語を(分かり切った)概念に割り当てる
だけでしょ?
この分野、発展してないというつもりはないが、一版のIT分野において
恐ろしく改善度合が低い。(おそらく部署最低かもw)
0824muro ntaich086179.aich.nt.ftth.ppp.infoweb.ne.jp/
2005/04/15(金) 15:10:43ぇ し の ァ ハ
け と ぉ ァ
うはっwww夢がひろがりんぐwwwwww
0825デフォルトの名無しさん
2005/04/15(金) 16:13:26黙ってペーパー読め
0826デフォルトの名無しさん
2005/04/15(金) 18:30:27たとえば関係databaseにおけるCodd,logicでのGentzen,検証でのFloydやHoareの論文に
相当するものをあげてみませんか? Kildall? Cousot?
0827デフォルトの名無しさん
2005/04/15(金) 18:38:350828デフォルトの名無しさん
2005/04/15(金) 19:19:38ちょっと古いような…
Chaitinのgraph coloringとかCytronのSSAのやつとか
0829デフォルトの名無しさん
2005/04/15(金) 19:33:200830デフォルトの名無しさん
2005/04/15(金) 20:59:41SSAのoriginalはCytronでなくWegmanでない?
SSAとは、同一変数に対する定義点が高々一つしか存在しないという性質を持つ中間語形式のこと。
これにより定義点とその使用点の関係が明示的になるので各種最適化が簡潔になる。
その特徴は関数型言語と共通するところが多い。弱点は配列やポインタの扱い。
0831デフォルトの名無しさん
2005/04/15(金) 22:03:51SSA関連の論文で参照されてるのは、ほとんど全てCytronって希ガス。
0832デフォルトの名無しさん
2005/04/15(金) 22:29:54依存チェーンをたどる古典的なやり方に慣れてるだけかも知れんが。
0833デフォルトの名無しさん
2005/04/16(土) 02:12:36コンパイラのようなものを作っておるんでスが
yaccでは構文木をつくるだけにしておいて
そいつに対しvisitorパターンでホゲホゲする
ってのが定番なんでしょうか
0834デフォルトの名無しさん
2005/04/16(土) 02:42:080835デフォルトの名無しさん
2005/04/16(土) 03:12:06情報量ゼロw
0836デフォルトの名無しさん
2005/04/16(土) 03:19:250837デフォルトの名無しさん
2005/04/16(土) 03:22:000838デフォルトの名無しさん
2005/04/16(土) 03:23:52OCamlにはocamlyaccとかocamllexとかあるからええよー
Cより楽やよー
0839デフォルトの名無しさん
2005/04/16(土) 06:46:490840デフォルトの名無しさん
2005/04/16(土) 10:29:59できあがる物は同じなのに?
0841デフォルトの名無しさん
2005/04/16(土) 11:11:210842デフォルトの名無しさん
2005/04/16(土) 12:12:28なに?自分の主張が分かってもらえなかったら、アホなのか?
しかも、何もしなくても言いたいことが伝わると思っている。
まるで子供だなww
0843デフォルトの名無しさん
2005/04/16(土) 12:27:18意味不明。
0844デフォルトの名無しさん
2005/04/16(土) 12:46:29なぜなら、その時その人に言えることがそれ以外無いからだ。
0845デフォルトの名無しさん
2005/04/16(土) 14:34:45意味不明。
0846デフォルトの名無しさん
2005/04/16(土) 14:41:53ぎゃはははははは
こんなにわかりやすくいってやってるのにわからないなんてしょうしんしょうめいのあほだなwwwwwwwwwwwwwwwwwwww
0847デフォルトの名無しさん
2005/04/16(土) 14:51:43なに?自分の主張が分かってもらえなかったら、アホなのか?
しかも、何もしなくても言いたいことが伝わると思っている。
まるで子供だなww
0848デフォルトの名無しさん
2005/04/16(土) 14:53:10なぜなら、その時その人に言えることがそれ以外無いからだ
0849デフォルトの名無しさん
2005/04/16(土) 14:53:160850デフォルトの名無しさん
2005/04/16(土) 14:55:230851デフォルトの名無しさん
2005/04/16(土) 16:04:49そんな高尚(でもないか)なものがこのスレのどこに?
0852デフォルトの名無しさん
2005/04/16(土) 16:15:45自己記述も可能に作ったので(VM用のコンパイラ)デバッガ、エディタ(ANSIエスケープシーケンス端末用)
全部を自己記述で完結できたのですが、ビットマップディスプレイ用に簡易なウィンドウシステムを導入
しようとしてグラフィックの扱いをスクリプトのレイヤーとネイティブの間の粒度をどれくらいの細かさにすべきか
悩んでおります、なにかこの手の完全に閉じた環境のためのウィンドウシステムでスクリプト言語がらみの参考文献
ってありませんか?
※squeakは見てみましたがあそこまでやる気力はもうありませんorz
0853デフォルトの名無しさん
2005/04/16(土) 16:58:26かなりのご年輩の方をお見受けした。
Xは駄目なの?
0854デフォルトの名無しさん
2005/04/16(土) 17:09:23俺は>>852ではないけど、なんで年配だと判断できたの??
0855デフォルトの名無しさん
2005/04/16(土) 19:04:200856デフォルトの名無しさん
2005/04/17(日) 01:31:480857デフォルトの名無しさん
2005/04/17(日) 11:20:21自演じゃないだろ。Xなんて全然関係ないモン持ち出して来てるし。
0858852
2005/04/17(日) 12:29:26まじめな話、独自言語と仮想マシンを用いてGUI付きの環境を構築しているものはsmalltalk以外に知らないのです。
これらを論じていてかつ入手しやすい書籍があればベストですが見かけませんでした。
(LittleSmalltalkはテキストコンソールベースですがかなり参考になりました、今はもう絶版ですが)
0859デフォルトの名無しさん
2005/04/17(日) 12:46:43書籍にはあまり書かれないんじゃないかと思う。
・ウインドウ一枚だけもらって後は自前のGUIシステム(Squeak)
・各ウインドウはネイティブの物をもらい、中身は自前描画(VisualWorks)
・ネイティブウィジェットを使う自前クラスを構築(Ambrai Smalltalk)
・ネイティブライブラリ使えるから勝手にしてくれ(各種スクリプト言語)
どれが優れてるって一意には決まらんよね。
0860デフォルトの名無しさん
2005/04/17(日) 13:01:40あおきあつしちゃんのページいきなよ。
Smalltalkerを自認してるしWEBページも情報豊富だよ
0861デフォルトの名無しさん
2005/04/17(日) 13:35:12>どれが優れてるって一意には決まらんよね。
同意。
JavaだとAWTの頃はOSのネイティブなコンポーネントを使っていたが、
Swingからは、各ウィンドウをOSからもらい中身は自前描画するようになった。
だからどのOSでも同じように見える…かというと、フォントの問題で
そうもいかんかったりするんだけど。
HSPなんかはWindowsオンリーで開き直ってるしね。
>>852の用途がよくわからないんだけど(「ゲームなどのコンソール用」って?)
絵を描いたりするのなら、GUI部品並べるだけではだめだから、
線やら円の描画が要るし、イメージの描画や、場合によってはスプライトなんかも
用意しなきゃいかんだろう。
「粒度」という言い方が適当かどうかは知らんが、俺も今悩んでるところ。
0862デフォルトの名無しさん
2005/04/17(日) 15:25:170863デフォルトの名無しさん
2005/04/17(日) 18:57:030864デフォルトの名無しさん
2005/04/17(日) 19:23:010865デフォルトの名無しさん
2005/04/17(日) 19:52:310866デフォルトの名無しさん
2005/04/17(日) 19:53:370867デフォルトの名無しさん
2005/04/17(日) 19:56:38>>862や>>863はもっと低レベルの話
をしてるんかな。
0868デフォルトの名無しさん
2005/04/17(日) 20:15:15ただし、 OpenGL でうまく行ってる例多数。
どう説明できる?
0869デフォルトの名無しさん
2005/04/17(日) 20:17:560870デフォルトの名無しさん
2005/04/17(日) 20:30:10そうだそうだ!
りんごの話に戻せ!
0871デフォルトの名無しさん
2005/04/17(日) 20:36:260872デフォルトの名無しさん
2005/04/17(日) 21:17:020873デフォルトの名無しさん
2005/04/17(日) 21:20:480874デフォルトの名無しさん
2005/04/17(日) 21:23:030875デフォルトの名無しさん
2005/04/17(日) 23:05:00そうでもないと思うけど・・・
0876デフォルトの名無しさん
2005/04/17(日) 23:26:24過ぎないからね。
0877デフォルトの名無しさん
2005/04/18(月) 00:54:530878デフォルトの名無しさん
2005/04/18(月) 02:18:18その例っていうのは GL じゃなくて GLUT 使っているんじゃないの?
0879デフォルトの名無しさん
2005/04/18(月) 22:26:12美人なのか?
0880デフォルトの名無しさん
2005/04/18(月) 22:48:35お前はイケメンなのか?
0881デフォルトの名無しさん
2005/04/18(月) 22:49:370882デフォルトの名無しさん
2005/04/19(火) 13:20:46ソースファイルをプリプロセッサに食わせて、出てきた処理済みファイルに対して
コンパイルを行うとします。
ここで、プリプロセス後のファイルは、それまでの情報を
失っている場合がありますよね。
特に、コンパイル中にエラーが起きた場合には、
行番号がずれてしまっていることがあるため、ユーザーには意味不明な
エラー行を吐いてしまうと思うんですよね。
みなさんは、ここらへんをどうやって解決しているんでしょうか?
0883デフォルトの名無しさん
2005/04/19(火) 13:30:44プリプロセスの出力をccに喰わせるののなら、#line ディレクティブを
入れるという手があるよ。
0884デフォルトの名無しさん
2005/04/19(火) 13:30:520885デフォルトの名無しさん
2005/04/19(火) 20:14:090886デフォルトの名無しさん
2005/04/19(火) 21:04:530887デフォルトの名無しさん
2005/04/19(火) 22:31:02使った事ないけど
0888デフォルトの名無しさん
2005/04/19(火) 23:35:360889デフォルトの名無しさん
2005/04/19(火) 23:47:00できればm4より記述力が高くて使いやすいやつ。
0890デフォルトの名無しさん
2005/04/19(火) 23:53:590891デフォルトの名無しさん
2005/04/19(火) 23:55:350892デフォルトの名無しさん
2005/04/20(水) 00:37:25自分でプリプロセッサを書いてるのかな?
ターゲット言語がC/C++なら、>>883の言うように適切な#lineを挿入しましょう。
入力ファイルの行番号と、出力ファイル(ソース)の行番号を管理しておいて、
それらが一致しなくなったら自動的に
#line ほんとの行番号 "inputfilename"
という行を挿入するような出力ルーチンを用意しておけばいいと思います。
私はJava向けのプリプロセッサ(というかコード生成系)を書きましたが、
Javaには#lineがないので、エラーが出たら勘で元の場所を見つけてます。
なにかいいアイデアがあったら教えてくらさい。
0893デフォルトの名無しさん
2005/04/20(水) 06:54:390894デフォルトの名無しさん
2005/04/23(土) 02:57:00> 私はJava向けのプリプロセッサ(というかコード生成系)を書きましたが、
>Javaには#lineがないので、エラーが出たら勘で元の場所を見つけてます。
この場合の「エラー」がどんなものかわからないんだけど、892が作ったのが
cpp流の、文法を理解しないプリプロセッサで、javacでコンパイルエラーを
起こし、その場所が分からなくて困る、ということなら、原始的だけど
//#line ほんとの行番号 "inputfilename"
みたいなコメントを入れるとかかね。人間がソースを見れば、
どこの場所かわかるだろ。
もし、そのプリプロセッサが、完全なパースを行いエラーのないJavaソースを
吐くようなもので、実行時エラーの行番号を知りたい、ということなら、
いっそJavaソースではなくバイトコード吐かせた方が楽なような気がする。
0895デフォルトの名無しさん
2005/04/23(土) 21:51:48Hoge.java:123: error
みたくなってたら
Hoge.org とかいうファイルの123行目を見ると元のソースと行番号が分かるようにしておく。
後は、エディタのマクロを書いて、
javacのエラーメッセージからワンキーでソースのエラー行にジャンプ。
もしくは>>893
0896デフォルトの名無しさん
2005/04/25(月) 22:25:53どれぐらいいるの?
もし、よかったらどんなのやってるかおしえて!
0897デフォルトの名無しさん
2005/04/25(月) 22:32:34道具を作って喰っていけるのは一握りでしょうな。
0898デフォルトの名無しさん
2005/04/25(月) 22:52:57ノシ
NDAがあるんでこれ以上は�_
0899デフォルトの名無しさん
2005/04/25(月) 23:25:47仕事していたりすると書けない事もある。
書くとバレるぐらいドマイナーな事やっている事もあるので2ちゃんではボケ役が楽しい。
ギャグが下手くそすぎるのが悩みの種。
0900デフォルトの名無しさん
2005/04/26(火) 12:20:46それ以上はやったことないわ
言語だけで食っていける人はちょいうらやましい
0901デフォルトの名無しさん
2005/04/26(火) 16:42:44書いてバレないようなことやってても食えないからなー
0902デフォルトの名無しさん
2005/04/26(火) 18:44:22仕様書作成→コーディング→単体テスト→結合テストのルーチンワーク。
ところで皆さんのところでは開発言語は何を使ってますか?
うちはまだCです……いい加減つらい。
0903デフォルトの名無しさん
2005/04/26(火) 21:26:14全然想像できないなぁ…
0904デフォルトの名無しさん
2005/04/27(水) 00:14:41ノ
とはいってもパーサだけだけど
0905デフォルトの名無しさん
2005/04/27(水) 03:01:53んなわけないんだけど、書いたら即バレ(w
つかちょっとでも事例書いたらバレる。
0906デフォルトの名無しさん
2005/04/27(水) 07:00:51うちもCだ。せめてC++にしたいところだが、1Mstep以上のコードを今更書き直せない。
0907デフォルトの名無しさん
2005/04/27(水) 19:39:24ILのクラス階層が作れないと辛かろう。
0908デフォルトの名無しさん
2005/04/27(水) 20:35:46多分携帯だろうな。
今時、活気あるところといえば、携帯ぐらいしか思い付かんw
0909デフォルトの名無しさん
2005/04/28(木) 01:10:08俺も一度客先のシステムにスクリプトエンジン組み込んだことある。
別のシステムでは、スクリプトエンジンと言うほどではないが、
式を評価するパーサと評価器を組み込んだ。
Excelなんかがいい例だけど、ユーザが入力した式を評価する程度の用件なら、
結構いろいろなシステムであると思う。
0910デフォルトの名無しさん
2005/04/28(木) 01:39:190911デフォルトの名無しさん
2005/04/28(木) 06:38:510912デフォルトの名無しさん
2005/04/28(木) 10:01:420913デフォルトの名無しさん
2005/04/28(木) 15:13:130914デフォルトの名無しさん
2005/04/28(木) 20:59:12なんでそこに話が戻るんだw
0915デフォルトの名無しさん
2005/04/29(金) 00:58:210916デフォルトの名無しさん
2005/04/29(金) 01:00:030917デフォルトの名無しさん
2005/04/29(金) 18:38:45なんでそこに話が戻るんだw
0918デフォルトの名無しさん
2005/04/29(金) 18:44:400919デフォルトの名無しさん
2005/04/29(金) 20:22:31東大情報ですか?
0920デフォルトの名無しさん
2005/04/29(金) 22:55:28そうなのか?珍しくないか?
それとも、システムが古いのか?
0921デフォルトの名無しさん
2005/05/01(日) 11:49:30それともネタ?
0922デフォルトの名無しさん
2005/05/01(日) 14:09:47岩波のプログラミング言語処理系
http://www.amazon.co.jp/exec/obidos/ASIN/4000103458/qid=1114924069/br=3-1/br_lfncs_b_1/249-2372217-9000318
と
のだめカンタービレ#1〜#11,(近日#12が発売予定)
http://www.amazon.co.jp/exec/obidos/tg/series/-/88270/comic/ref=pd_iis_1/249-3105321-3542702
上記のうちどちらを購入しようか悩んでいます。意見をお聞かせください。
以上、宜しくお願いいたします。
0923デフォルトの名無しさん
2005/05/01(日) 14:38:35のだめを買える部署内予算がウラヤマ(w
0924デフォルトの名無しさん
2005/05/01(日) 18:18:35タイトルは、
のだめエンター
のだめ: command not found.
0925デフォルトの名無しさん
2005/05/01(日) 19:33:08下を部で買って、上は自分で買え。
のだめは何度も読み返す漫画じゃないし。
0926デフォルトの名無しさん
2005/05/01(日) 19:36:26...,、 - 、
,、 ' ヾ 、 丶,、 -、
/ ヽ ヽ \\:::::ゝ
/ヽ/ i i ヽ .__.ヽ ヽ::::ヽ
ヽ:::::l i. l ト ヽ ヽ .___..ヽ 丶::ゝ
r:::::イ/ l l. i ヽ \ \/ノノハ ヽ
l:/ /l l. l i ヽ'"´__ヽ_ヽリ }. ', ',
'l. i ト l レ'__ '"i:::::i゙〉l^ヾ |.i. l
. l l lミ l /r'!:::ヽ '‐┘ .} / i l l / ̄ ̄ ̄ ̄ ̄ ̄ ̄
l l l.ヾlヽ ゝヾ:ノ , !'" i i/ i< お兄ちゃん
iハ l (.´ヽ _ ./ ,' ,' ' | またゴミ本勧めるの?
|l. l ` ''丶 .. __ イ \_______
ヾ! l. ├ァ 、
/ノ! / ` ‐- 、
/ ヾ_ / ,,;'' /:i
/,, ',. ` / ,,;'''/:.:.i
0927デフォルトの名無しさん
2005/05/01(日) 20:40:520928デフォルトの名無しさん
2005/05/04(水) 19:52:110929デフォルトの名無しさん
2005/05/04(水) 21:18:390930デフォルトの名無しさん
2005/05/04(水) 21:24:030931デフォルトの名無しさん
2005/05/04(水) 21:30:00こんなに違うの?
英語自身ないけど、もってるだけでかっこいいしなぁ
0932デフォルトの名無しさん
2005/05/04(水) 21:33:09ダメだよ!お金は大事だよ!
要らない物は買ったらダメ。本当にいる物は何かをちゃんと考えようね。
0933デフォルトの名無しさん
2005/05/04(水) 21:36:360934歩美
2005/05/04(水) 21:40:48情報処理の学科に今年入学しました。
コンパイラ作成には興味があるのですが、どこから手をつけていいかわかりません。
学習手順やお勧めの本を教えてくださいませんか?
よろしくお願いします。
0935デフォルトの名無しさん
2005/05/04(水) 21:43:110936デフォルトの名無しさん
2005/05/04(水) 21:48:20OS/Programming 簡単な C コンパイラ
ttp://www.csg.is.titech.ac.jp/~chiba/lecture/os/
0937デフォルトの名無しさん
2005/05/04(水) 23:10:08サポートしている人って凄い凄すぎる
0938デフォルトの名無しさん
2005/05/04(水) 23:15:36よし、じゃまずSchemeインタプリタの実装だ。
字句解析からやってみろ。"(",")","let",数字,文字列,などなど にIDを振って出力するんだ。
0939デフォルトの名無しさん
2005/05/04(水) 23:21:24同意
0940デフォルトの名無しさん
2005/05/04(水) 23:24:45あのコードの量は脅威的だ。
0941デフォルトの名無しさん
2005/05/04(水) 23:56:01あれを金もらわずに保守してる奴はアホ
0942デフォルトの名無しさん
2005/05/04(水) 23:56:25こんな感じ?
int xxx(int c)
{
int rtnVal = -1;
switch(c)
{
case '(':
rtnVal = 1;
case ')':
rtnVal = 2;
}
return rtnVal;
}
0943デフォルトの名無しさん
2005/05/05(木) 00:00:49そうだね。
でもそれだと変数名や数字を扱えませんね。IDを表す構造体を作るとよいです。
0944デフォルトの名無しさん
2005/05/05(木) 00:01:35lexerはそんな感じだ
あとはそれで読んだトークンをかき集めてリストにできれば
とりあえずreadは完成だ
0945デフォルトの名無しさん
2005/05/05(木) 00:02:59SchemeでSchemeの処理系を作ってみると面白いかもしれませんよ。
0946デフォルトの名無しさん
2005/05/05(木) 01:00:380947デフォルトの名無しさん
2005/05/05(木) 02:21:25??? Haskeller?
0948デフォルトの名無しさん
2005/05/05(木) 11:23:06文字列処理は別にリストじゃなくてもいいけど、字句解析のあとの処理でリストだと便利というか…
0949デフォルトの名無しさん
2005/05/05(木) 13:43:190950デフォルトの名無しさん
2005/05/05(木) 14:14:14|∧∧ >>950
|,,゚Д゚)
|U U ゴルァ!
0951デフォルトの名無しさん
2005/05/05(木) 16:03:53再帰?
0952たまえ
2005/05/05(木) 16:19:20Knuth先生やスティーブンス先生も、効率をもとめgoto使ったので
私も、goto >>934
0953デフォルトの名無しさん
2005/05/05(木) 16:21:120954デフォルトの名無しさん
2005/05/05(木) 18:25:450955デフォルトの名無しさん
2005/05/05(木) 18:52:080956デフォルトの名無しさん
2005/05/05(木) 23:10:15【○○○畑】コンパイラ・スクリプトエンジン相談室6【○○○畑】
あたりどう?
○には適当な言葉をいれてね!
0957デフォルトの名無しさん
2005/05/05(木) 23:29:560958デフォルトの名無しさん
2005/05/05(木) 23:34:11でいいじゃないか。
0959デフォルトの名無しさん
2005/05/05(木) 23:34:510960デフォルトの名無しさん
2005/05/05(木) 23:34:52http://www.inpri.jp/
0961デフォルトの名無しさん
2005/05/05(木) 23:35:17http://pc8.2ch.net/test/read.cgi/tech/1065535118/
0962デフォルトの名無しさん
2005/05/05(木) 23:38:200963デフォルトの名無しさん
2005/05/05(木) 23:43:580964デフォルトの名無しさん
2005/05/06(金) 00:24:140965デフォルトの名無しさん
2005/05/06(金) 01:14:59あれの型変換とかどういう風に実装してんの?
0966デフォルトの名無しさん
2005/05/06(金) 08:30:42「コンパイラ・スクリプトエンジン」相談室6
http://pc8.2ch.net/test/read.cgi/tech/1115335709/
0967デフォルトの名無しさん
2005/05/06(金) 17:13:400968デフォルトの名無しさん
2005/05/08(日) 05:00:570969デフォルトの名無しさん
2005/05/08(日) 05:06:400970デフォルトの名無しさん
2005/05/08(日) 05:10:150971デフォルトの名無しさん
2005/05/08(日) 05:18:070972デフォルトの名無しさん
2005/05/08(日) 05:19:02www
wwwおkwwwっwwwwwwwwwwww
うはっwwwうぇwwwおkwwwwwwwwwwwwwww
っwwwwwwおkwwwwwwwwwwww
0973デフォルトの名無しさん
2005/05/08(日) 07:13:140974デフォルトの名無しさん
2005/05/08(日) 07:22:39説明されないと解らないような謎かけじゃなかろうに(w
0975デフォルトの名無しさん
2005/05/08(日) 07:34:06説明キボン
0976974
2005/05/08(日) 07:51:51たいしたもんだw
0977デフォルトの名無しさん
2005/05/08(日) 07:57:580978デフォルトの名無しさん
2005/05/08(日) 09:25:27http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0979デフォルトの名無しさん
2005/05/08(日) 09:37:17http://pc8.2ch.net/test/read.cgi/tech/1115335709/
0980デフォルトの名無しさん
2005/05/08(日) 09:50:48全然分からん
0981デフォルトの名無しさん
2005/05/08(日) 11:04:11http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0982デフォルトの名無しさん
2005/05/08(日) 11:12:22重複してる〜
「コンパイラ・スクリプトエンジン」相談室6
http://pc8.2ch.net/test/read.cgi/tech/1115335709/
0983デフォルトの名無しさん
2005/05/08(日) 11:38:16http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0984デフォルトの名無しさん
2005/05/08(日) 11:39:14http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0985デフォルトの名無しさん
2005/05/08(日) 11:40:26http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0986デフォルトの名無しさん
2005/05/08(日) 11:44:15http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0987デフォルトの名無しさん
2005/05/08(日) 11:45:190988デフォルトの名無しさん
2005/05/08(日) 11:45:59http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0989デフォルトの名無しさん
2005/05/08(日) 11:48:44http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0990デフォルトの名無しさん
2005/05/08(日) 11:52:05http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0991デフォルトの名無しさん
2005/05/08(日) 12:02:42http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0992デフォルトの名無しさん
2005/05/08(日) 12:03:51http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0993デフォルトの名無しさん
2005/05/08(日) 12:06:06http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0994デフォルトの名無しさん
2005/05/08(日) 12:06:260995デフォルトの名無しさん
2005/05/08(日) 12:08:32http://pc8.2ch.net/test/read.cgi/tech/1115511891/
0996デフォルトの名無しさん
2005/05/08(日) 12:35:25「コンパイラ・スクリプトエンジン」相談室6
http://pc8.2ch.net/test/read.cgi/tech/1115335709/
0997デフォルトの名無しさん
2005/05/08(日) 12:35:49http://pc8.2ch.net/test/read.cgi/tech/1115335709/
0998次スレ
2005/05/08(日) 12:36:56http://pc8.2ch.net/test/read.cgi/tech/1115335709/
0999次スレ
2005/05/08(日) 12:37:36http://pc8.2ch.net/test/read.cgi/tech/1115335709/
1000デフォルトの名無しさん
2005/05/08(日) 12:39:2110011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。