1 名前:デフォルトの名無しさん mailto:sage [2006/05/06(土) 00:59:13 ] プログラミング言語処理系の開発に興味のある人達のスレッドです。 字句解析・構文解析から,データフロー解析,ループ並列化,データ分散,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/ 関連リンクは多分 >>2-10 あたり
580 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 14:19:25 ] オブジェクトのままじゃダメなの?
581 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 15:54:59 ] テキストである必然性はないので、dump/loadとか
582 名前:579 mailto:sage [2006/08/03(木) 17:49:21 ] >>580 オブジェクトのままでいいんです。 でもオブジェクトをパースしてアクション起こすものって、 結局rubyでゴリゴリプログラムを書かないとダメじゃないですか。 raccなら文法を専用の記法で書けるし、メンテ楽だし。 raccの入力がテキストである以上、いちどオブジェクトを テキスト表現にしないといけないのかな、と。
583 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 02:15:26 ] Rubyでゴリゴリってのと 専用の記法というのの違いがわからない。 Rubyじゃなくて他の記法でparserを書きたい、 けどparseする対象はRubyのオブジェクトですよ、ってこと?
584 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 03:04:59 ] なんとなく有限状態マシン的なコードを楽に書ける方法ない?ってだけな希ガス
585 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 03:42:13 ] オブジェクトをパース っていう意味がわからない 説明よろ
586 名前:デフォルトの名無しさん mailto:sage [2006/08/05(土) 00:44:41 ] 普通にEnumとかのデータ読み込んで次のオブジェクト作ったり 読んだりするだけじゃね?
587 名前:デフォルトの名無しさん mailto:sage [2006/08/05(土) 01:16:30 ] だけじゃね?厨はスルーでよろ
588 名前:デフォルトの名無しさん [2006/08/05(土) 10:50:40 ] オブジェクト脳で無い奴にはあまりピンとこないかもしれないが、 オブジェクト思考はこれからの言語の基本となることは確か。
589 名前:デフォルトの名無しさん mailto:sage [2006/08/05(土) 10:56:42 ] お前らが言ってることがさっぱり分からない。 具体的に語れ。
590 名前:デフォルトの名無しさん mailto:sage [2006/08/05(土) 12:31:14 ] 10年前からタイムスリップしてきた奴が見受けられるな・・・ 具体的に語ると>>588 とか
591 名前:デフォルトの名無しさん mailto:sage [2006/08/05(土) 12:35:26 ] 時代はMQだしなMQサイコーMQは素晴らしい
592 名前:デフォルトの名無しさん [2006/08/06(日) 08:40:24 ] 「すべてがオブジェクト」って、意訳すると「手抜きしました」 ってことだよね?
593 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 11:08:43 ] O(log n) であくせすできるリスト構造 ttp://www.informatik.uni-bonn.de/~ralf/publications/FingerTrees.pdf
594 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 14:06:21 ] >>593 ざっと読んでみようと思ったけどさっぱりわからんかったorz ハッシュ表作ればO(1)でアクセスできるけど、それ以上のメリットって何なの?
595 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 14:23:09 ] >>594 ゴキブリみたいなデータ構造になって気持ち悪くなるってメリットあると思う
596 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 16:00:12 ] >>594 abstractも読んでないのかよ。
597 名前:デフォルトの名無しさん [2006/08/06(日) 16:27:48 ] >>594 いいハッシュ関数がないときはどうするの。
598 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 16:41:18 ] そこそこいいハッシュ関数を探す
599 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 17:24:04 ] / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | 先輩。ハッシュならいいのがありますよ \  ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ( ・∀・) ∧ ∧ < MD5とかいうなよ ( ⊃ ) ( ゚Д゚) \____________  ̄ ̄ ̄ ̄ ̄ (つ_つ__  ̄ ̄ ̄日∇ ̄\| DELL |\  ̄ ======= \
600 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 17:28:04 ] 配列のが速いよ絶対
601 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 17:51:31 ] 関数型言語でリスト的にアクセスできるってのが目的じゃない?
602 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 20:04:44 ] 2-3木っつーから平衡木の話かと思ったらそうじゃなかったのか。 誰か日本語に翻訳してくれ。 リストに対するアドバンテージは何なのかな。
603 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 20:33:18 ] いやだからゴキブリみたいな構造がキモイだけって だけのはなしなんだが
604 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 15:09:34 ] 私は英語苦手なんだけど、皆さんはどうやって訳してます? PDF→テキスト→辞書を英次郎で引く→テキストに1個書くってやってるんだけど。 機械翻訳は補助には使うけど。結局使えないし。
605 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 15:45:53 ] 普通に読んでるけど。量をこなせば日本語と同じように読めると思う
606 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 16:06:55 ] >>604 俺も大学のときはそんな感じでやってた。 先輩風吹かすと、 技術書の場合、予備知識なしに英文だけ読んでも分からない場合があるので、 その技術に関する日本語の本も並行して読むといい。 一言一句を表面的に和文に置き換える能力は基礎の基礎で、 こなれた訳文を作る能力をみがきたい(文章の内容を理解して、それを表現する能力)。 辞書は英英も使いたい。英英なら言葉の意味が文章で説明されているが、 英和は(項目によっては?)あたらずとも遠からずな日本語の単語が羅列されてるだけ。 お勧めはOALD。(ホントは英英を和訳した辞書があればいいのにと思う) 余裕があれば、将来英文を書くときのために、使えそうな言い回しをメモっておくとよい。
607 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 16:17:06 ] ある程度、自己解決しました。 最近はブラウザでピロっと出てくれるけど、 すぐ忘れるので頭に残ってくれない。 出たテキストがブラウザに貼り付いててくれるといいんだがと思って、 TrEditっての見つけて、辞書引く効率UPしました。 VBで作られてて良く落ちるんだけどまぁいいや。 今までに比べはるかに、スピードUPしました。ありがとうございました。 勝手に嬉しくなって読んで見てます。 とりあえず内容は遅延評価前提だけど、 今までは一般的に速いリストの操作はあったけど、複雑だったのが 簡潔に一般的に書けるようになったってことでしょうか? 前提となる知識として、モノイドとRight and left reductions 右と左還元があるとか。 モノイド自体よくわからないけど、、、書いてある式はこれだけ。 class Monoid a where 0 :: a (c) :: a → a → a このモノイドの+と○を合体させたような演算子は結合演算子? ++のこと? aは0か、++の2項演算子があるってだけなのでしょうか???
608 名前:デフォルトの名無しさん [2006/08/07(月) 16:31:21 ] 超基本的な質問なんだけど、プログラミング言語の処理系で使うハッシュ表ってエントリーがどんどん増えていく場合も考慮して、動的にテーブルを大きくする必要あるじゃん。 そのコストを踏まえてもO(1)なの?
609 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 17:50:01 ] コスト的にもO(1) hashでコリジョン多いならTrieの方が速いかも ただし、単なるTrieは遅く、Ternary Search Trieというのが速いらしい pc8.2ch.net/test/read.cgi/tech/1086272325/121-
610 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 18:43:59 ] >>609 お前、2chのどこのダレかもわかんない、どんな実装を使ったのかもわからない そんなベンチマークを盲目的に信じてるのかよ。馬鹿すぎだ。
611 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 18:55:43 ] 「盲目的に信じてる」というほど断定してるようにも見えんが・・・。 暑いからってめちゃくちゃな八つ当たりするのはどんなもんかね。
612 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 19:50:46 ] >>609 >O(1) テーブル拡大のポリシーによると思うが、 どういうポリシーならO(1)になるか教えてちょ。
613 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 20:24:01 ] 最大nビットのデータに対して2n-1ビットのハッシュ値を使う
614 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 21:55:19 ] >>611 暑いからって、根拠の乏しいレスを信じる馬鹿よりマシかと
615 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 22:10:07 ] なんで素直に 2ch の外で裏を取らないのだろう...
616 名前:609 mailto:sage [2006/08/07(月) 23:16:29 ] >>610 すんません そのスレの121、実は俺なのですよ・・・ あれから色々試したけど、tstが検索においては hashよりだいぶ速いのは検証済みです ただしデータ構造上メモリを結構食います TrieはO(1)に加えてインクリメンタルなので、 途中の結果も無駄にならなかったりするメリットもあります ちなみにうちのコンパイラはtst使ってます
617 名前:610 mailto:sage [2006/08/08(火) 01:12:48 ] 2chのベンチマークなんて信じる奴は馬鹿。 俺は住所氏名年齢電話番号までわかってる奴じゃなきゃ 一切信用しない。
618 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 01:22:43 ] >>606 英英辞書ですか。人生長いし買ってみようかな。CD付いてるらしいし。
619 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 03:44:18 ] >>606 >(ホントは英英を和訳した辞書があればいいのにと思う) それだ!
620 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 08:40:39 ] >>617 当然の話だな
621 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 12:22:17 ] >>617 そんなんで信用できるのか? 俺はソースコードと追試手順があって自分で追試できて追試したものしか信用しない. 住所氏名年齢電話番号がわかってても意味ないだろ…
622 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 14:32:30 ] あからさまな釣りにひっかかっといて 慎重な姿勢とか見せても笑えるだけw
623 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 16:21:53 ] >>606 www.zkai.co.jp/books/search/book_detail.asp?ID=44201 ワードパワー英英和辞書とケンブリッジ英英和がありました。
624 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 16:39:23 ] >>623 あるんかい! けどサンプル見た感じジーニアスとか例文豊富な英和辞書とあんま変わらなくね?
625 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 19:14:56 ] >622 単に真面目な性格なだけじゃないの?
626 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 23:25:35 ] ここはLinux板みたいに嫌な雰囲気ですね
627 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 23:54:56 ] ハッシュ表やSTL vectorの拡張のコストについては amortized complexity analysis (償却計算量解析)について勉強すれば納得がいく
628 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 23:25:34 ] やべ、Ternary Search Trieすごい速いねw
629 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 13:28:06 ] Linuxみたいな嫌な雰囲気ってどんな感じ?
630 名前:デフォルトの名無しさん mailto:sage [2006/08/11(金) 01:30:06 ] 世界の宗教の原理主義派を集めたようなギスギスした 息の詰まる雰囲気だと思うよ。 Windowsを目の敵にしないと生きていけない。そうゆうゴミの集まり
631 名前:デフォルトの名無しさん mailto:sage [2006/08/11(金) 07:52:05 ] それは何? もっと構って欲しいのにって事?
632 名前:デフォルトの名無しさん mailto:sage [2006/08/11(金) 10:36:08 ] 意味不明です。
633 名前:デフォルトの名無しさん [2006/08/14(月) 19:10:55 ] flexでCのコードを出力すると、yy_acceptやyy_ecといったテーブルが作成されますが、 このテーブルの作成アルゴリズムみたいなものはあるのでしょうか?
634 名前:デフォルトの名無しさん mailto:sage [2006/08/14(月) 19:28:24 ] あります
635 名前:633 mailto:sage [2006/08/14(月) 20:35:45 ] それは、何というものでしょうか?よかったら教えてください。
636 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 00:34:08 ] 非決定性有限オートマトン (NFA) → 決定性有限オートマトン (DFA) 、 だったかな?
637 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 00:48:43 ] flexが実際どうやってるか知らないけど、NFA→DFAの変換は大学でやったな。 subset constructionだっけ? 実際の手順をノートに手書きでいっぱい書いた記憶があるw
638 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 01:36:45 ] >>637 この前取材に行った某高校のクラブ活動でやっていた事を自慢げに語られてもw
639 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 01:41:09 ] やったな。 だっけ? w ←どこ笑う所? ↑ 何が楽しいの?
640 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 02:20:46 ] >>639 昔を懐かしんでるんじゃないのか? 電車で思い出し笑いしてる人とかいるぢゃん
641 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 00:12:21 ] Coins はどうなったんかな…
642 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 19:15:55 ] なんだか、子難しい話して、話せないようにされてるような希ガス。 NFA→DFAの変換とかすごいじゃん。
643 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 21:49:40 ] そーでもない 大学で情報科学取った人なら大体やったんじゃまいか
644 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 22:25:39 ] 講義の内容的には、序の口もいいところ。
645 名前:デフォルトの名無しさん mailto:sage [2006/08/19(土) 01:13:32 ] オートマトン最小化とポンピング補題は中間試験の必出問題ですな。
646 名前:Flex [2006/08/19(土) 21:27:44 ] 初めまして、宜しくお願いします。50の手習いでFlexを勉 強しています。早速の質問ですが、お手柔らかにお願いしま す。 Flexではinputの再定義は、#undefと#defineで出来ます。 unputの再定義はどうすれば良いでしょうか? 最初から、いきなりの質問で迷惑をかけるかと思いますが、 宜しくお願いします。
647 名前:デフォルトの名無しさん mailto:sage [2006/08/20(日) 09:29:13 ] flexには詳しくないですが、unputの再定義は不可能のよう。 (The `unput()' routine is not redefinable. This restriction is in accordance with POSIX. ) 自前のunputを利用したければ、%option unputを指定して、 最初からunputが生成されないようにすれば良いのかも。
648 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 12:02:27 ] LLやLRの構文解析表なんかも大学の講義などでは手書きでたくさん書くことになる。 flex/bisonをいじれるだけで満足な奴は知らないんだろうけど、コンパイラコンパイラで楽してる背景にはけっこう面白いアルゴリズムがいくつも使われてて、理解するには手書きでこつこつやるのが近道だったりする。
649 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 13:18:32 ] LL(k)とLALRの違いについて調べてます。 文法的にLL(k)だと不可能になるもの。エラー処理の煩雑さなどで違いを教えてもらえませんか。
650 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 13:53:43 ] A -> ( B B -> A ) | ) A | ) 括弧の対応を取るだけの文法だが、任意のkについてLL(k)でない。
651 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 21:48:04 ] おまいらJavaのパーサー作るとしたらどのぐらい時間かかるんですか?
652 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 21:55:21 ] >>651 ざっと走査するだけなら楽
653 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 22:07:36 ] うそつけw ホントなら書いてみろ
654 名前:652 mailto:sage [2006/08/22(火) 22:16:08 ] 分かった。嘘だから書かない。
655 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 23:33:28 ] >>653 Generics無しの頃(swing無かった頃だが)に一度書いた。 Generics使えばもっと楽に書けるだろうがGenerics自体の文法は入れたくない(w
656 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 23:33:41 ] 口だけ君はこれだから困る
657 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 00:09:38 ] ○だけ君はこれだから困る
658 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 00:21:23 ] △だけ君はこれだから困る
659 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 03:20:08 ] 656 :デフォルトの名無しさん :sage :2006/08/22(火) 23:33:41 口だけ君はこれだから困る 657 :デフォルトの名無しさん :sage :2006/08/23(水) 00:09:38 ○だけ君はこれだから困る 658 :デフォルトの名無しさん :sage :2006/08/23(水) 00:21:23 △だけ君はこれだから困る 659 :デフォルトの名無しさん :sage :2006/08/23(水) 03:20:15 |だけ君はこれだから困る
660 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 07:48:57 ] >>655 yaccとか使う場合だと、 specificationの内容を全部BNF文法に直す。 うまくあわないところ少し小細工する 意味解析ルーチンつける て感じですか? ・・・・なんか気の遠くなりそうな作業だな・・・・ ・・・・Genericsとかやりたくないな・・・・
661 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 08:16:39 ] >>651 パーサだから意味解析は置いといていいのね? >>3 の¬<><∪∪なら、 言語仕様書からシンタックス部分をまる写しするだけだから簡単。 というかサンプルについてるけど。 >>3 ではLALR(1)になってるけどLALR(∞)。
662 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 23:09:21 ] www.quut.com/c/ANSI-C-grammar-y-1998.html www.quut.com/c/ANSI-C-grammar-l-1998.html
663 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 23:50:56 ] ついにJavaにもクロージャ? - James Gosling氏らJDK7へ導入提案 journal.mycom.co.jp/articles/2006/08/23/java7closuer/ Javaもなんでもかんでも取り込むようになったもんだ
664 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 01:44:02 ] その記事、単に匿名ローカル関数のことをクロージャと呼んでるようだが カリー化しなくてもそう呼んでいいものなのか?
665 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 02:36:45 ] >>664 クロージャは語の通り囲い込みしか指さないので(ry
666 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 04:36:54 ] 関数型言語の本で封入って訳を見たことあるな
667 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 06:06:41 ] ふみゅ〜ん
668 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 10:37:04 ] >>664 >>665 も書いてるが カリー化とクロージャは、全く無関係な概念 関数からその関数を囲む環境にアクセスできればクロージャと言ってよい
669 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:10:06 ] じゃあ、単に匿名ローカル関数のことをクロージャと呼ぶのは間違いでよろしいか? 記事、ろくに読んでないが、ラムダ式のことをクロージャと呼んでるように見えたモナ
670 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:40:35 ] >>669 ラムダ式はクロージャを持つけど、クロージャはラムダ式じゃない
671 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:43:14 ] チョットワカッテキタ...
672 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 22:37:34 ] C#の匿名メソッドはクロージャとは別物ですか?
673 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 22:44:38 ] 「匿名メソッド is-a クロージャ」 あるいは 「匿名メソッド has-a クロージャ」 な関係
674 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 23:20:30 ] 記事、も一回読んでみたけど Cの関数へのポインタ程度のものを、導入するぐらいにしか見えん そしてそのCの関数へのポインタのようなものを、クロージャといってるような カリー化とかできそうに見えない、高階クロージャ(?)すらあやしい
675 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 23:30:18 ] まぁ糞JAVA言語がそろそろ行き詰まってきたってことだろうなw
676 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 23:41:03 ] >>674 int func int(int x) { return (int y) { x + y; }; }; int result = func(2)(3); こういうのならできるんじゃね? 実際の java で動くかどうかはしらないけど、一応カリー化できてるはず。
677 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 23:47:51 ] >>674 おまえはカリー化とクロージャの意味をわかってるのかと 今回提案された仕様のローカル関数及び匿名ローカル関数は れっきとしたクロージャだし、関数型も導入されるので、 カリー化するのも容易なはず >>676 ホワイトペーパーの例からだと、たぶんこんな感じではないかと int(int) add(int x){ return (int y) : x + y; } int result = add(2)(3); // => 5
678 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 23:52:34 ] >>677 いや、その例からだと add は有名関数だから、宣言は int(int) じゃなくて int では? 4ページ目の一番上。 さすがに、OCaml ばりの厳密で容易なカリー化は期待できないっすよ。 let add fun x y -> x + y; で宣言して add 1 2 で 3、add 1 で fun y -> 2 + y みたいなのは java では無理でしょ。
679 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 23:53:13 ] あ、間違えた。まあ良いや。
680 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 00:17:56 ] >>678 addはカリー化された加算関数で、型はint(int) (int)なので これでOKなはず。4ページ目の一番上の例は、int (int)な関数だよね > さすがに、OCaml?ばりの厳密で容易なカリー化は期待できないっすよ。 そりゃOCamlほど容易ではないけど、厳密かどうかで言えば同程度には厳密でしょ
681 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 00:25:58 ] >>680 上段 ほんとだー。すまねー orz >>下段 あ、すいません。『厳密』 ってのは 『制約』 ってのと同じような意味で使いました。 OCaml ではカリー化された関数しか扱えないみたいっスから。 int add(int x, iny y) { return x + y; } 「こんな感じに定義して add(1) ってしても 1 + y が帰ってこないじゃないかー」 って >>674 は想像しているのでは? って思いましたんで (^-^;;
682 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 00:27:23 ] オーバーロードとカリー化の共存は難しい。
683 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 00:39:23 ] すみません。某スレから誘導されてきました。 yaccやlexで生成したソースはどうやって使ったらいいのでしょうか?
684 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 01:00:40 ] >>683 きっとお前も質問だけして居なくなるんだろうな…>646みたいに。
685 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 01:23:18 ] >>684 いえ、ホント基本的な動作からわかってないので藁にもすがる思いですよ。 yyparseやyylexなんかがどういう動作をしてるのか?とかそっからわかっていません。 とりあえず、まず、大まかな流れが知りたいのですが、日本語でいいサイトないでしょうか? なんかyacc lexが独自に吐き出す関数とか変数とかわかってないです。 やりたいことはプログラムである文字列をパーサに渡して解析結果を取得することなんですが yacc lexの吐き出したソースが何をどこまでやってくれるのかってそこからいってわかってないです。
686 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 05:18:48 ] そうですか
687 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 05:55:38 ] >>683 main() { yyparse(); } yylexはyyparseのなかで勝手に呼ばれる
688 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 09:38:52 ] >>677 どうも、そういうことが出来そうに見えなかったんだよね Javaにクロージャ導入なんて記事を書くんなら 俺なら絶対カリー化の例をあげる でも、カリー化どころか高階関数の例もないので、どうもな まあ、ライターのレベルが低いだけかもしれんが
689 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 15:34:59 ] >>688 匿名関数も関数型変数も導入されるらしいのに、 なんで高階関数がないと予想したの?
690 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 21:09:50 ] 読解力のない阿呆 (>>688 ) のつまらん言い訳だよ
691 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 22:16:14 ] ライターのレベル以上に、リーダーのレベルが低すぎた悲劇だな。
692 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 01:30:04 ] つまりLISP最強ってことか。
693 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 02:07:02 ] なんでじゃ
694 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 04:25:26 ] Lisp触ってれば間違いようがないものな。
695 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 06:02:16 ] Lispの処理系をLispで書くのって無謀?
696 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 06:27:23 ] >>695 ものすごく簡単(数行しかない)なやつから、 きちんと機能を実装して、自分で自分を実行できるやつ、 もっと凄いやつ、と様々なので、答えようがない。
697 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 06:48:53 ] >>696 > ものすごく簡単(数行しかない)なやつから、 数行はないだろw
698 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 06:52:06 ] スーパー手抜きlisp ( loop (eval (read)) )
699 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 10:50:14 ] LISPってライブラリたくさんあるの?
700 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:31:04 ] >>699 君のレスは見ていて痛々しい。
701 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:48:32 ] しらねーなら書き込むなこの池沼が
702 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 13:08:21 ] ちょこっとLisp調べてみたけど、本当にこの言語で自己記述できるの? 字句解析とか構文解析のコード大体どんな感じになるのか情報orソースきぼんぬ
703 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 14:14:21 ] >>702 大昔の論文や書籍くらい読め #とか思ったら良書は絶版かYo!
704 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 14:57:32 ] >>701 聞けば答えてもらえると思うな、厨房。
705 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 16:47:29 ] けちくせーやつだな。だったらスレみてんじゃないよ。 Take,TakeでGiveはなしか。
706 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 16:53:24 ] 言いたがりが勝手に口を滑らせるだけだよ。 そんなものでも、最新の情報なら役に立つ。
707 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 17:12:04 ] >>689 出来ると書いてないから それにつきますな
708 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 20:46:44 ] >>702 っSICP 後ろのほうに自己記述に1章裂いてるお
709 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 01:19:54 ] Schemeを最初からCで書くより、一通りSchemeで書いてから必要な部分だけ Cにする方が楽だよね。
710 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 07:43:17 ] 今、M$のVisualStudio2005いじってるんだが、GC付きで64bitポインタ、メモリ管理サポートの ランタイム上で、C#、C++、VisualBasicが走るなんて、Lisp系言語を載せてくださいと言ってる ようなもんだな、と思った。Javaは過去にやろうとして16MBでギブアップしやがったので、 M$のCLIには少し期待している。
711 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 13:02:07 ] >>710 HotSpot以降のJVMならパラメータでメモリ量の調整きくよ。 web上のappletが廃れかけた頃にはいろんな言語のコンパイラがjvm用のクラス吐くようになったけど 今ははやらないのかねぇ。
712 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 14:01:08 ] >>711 むしろ最近になって流行ってきてると思うのだが JDK6でJava VM用のスクリプト言語をJavaから呼び出すための APIが標準化されるのも、Java VM用のスクリプト言語が流行ってきたからだろうし ちなみに先に言っておくと、GroovyもJava VM用のJavaScript処理系であるRhinoも Pnutsも単なるインタプリタではなく、JVM用のクラスファイルを内部で生成して、実行してる
713 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 16:15:07 ] >>712 スクリプト処理系が実行時にclassファイル吐いてるのはしらなかったな。 外部ファイルコンパイル実行する時にclassローダ的にはどういう扱いするんだろう?
714 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 18:10:57 ] 今のJVMならメモリの調整効くとかいってるが そんなことねーよただ確保してるだけでなんも有効には使ってない。 そのへんM$のは賢い。
715 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 20:13:16 ] >>713 いくつかのスクリプト処理系のソース読んだ限りでは、基本的に、 java.lang.ClassLoaderをサブクラス化して、スクリプトをコンパイルしたクラスは それに読み込ませるようにしてる ちなみに、自作のJVM上で動作するJavaライクなスクリプト言語でも、同じような手法で 実装してる
716 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 20:15:58 ] >>713 あと、わかっているかもしれないけど、念のため追記しておくと、クラスファイルを 生成するといっても、スクリプトを直接実行するときは、別に実際にファイルが 生成されるわけではなく、オンメモリにbyte配列としてクラスファイルを生成して、 それをClassLoaderで読み込むようになってる
717 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 08:56:44 ] >j ava.lang.ClassLoaderをサブクラス化して これが必要ってことはclassfileの仕様を拡張してるってこと?
718 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 12:32:30 ] >>717 いや、そういうわけじゃない java.lang.ClassLoaderのAPI見ればわかるんだが、 byte配列からClassオブジェクトを構築するためのメソッドなどはprotected になってるので、プログラムからこのメソッドを呼び出したいなら、サブクラス化 しなければいけないということ
719 名前:デフォルトの名無しさん mailto:sage [2006/08/31(木) 03:43:18 ] >>714 >そんなことねーよただ確保してるだけでなんも有効には使ってない。 そんなわけねーだろw
720 名前:デフォルトの名無しさん [2006/09/07(木) 15:26:38 ] ちょっと質問。 スタックを使って実装する言語についてです。 JavaのようにGCを持っていて、オブジェクトへの参照とプリミティブの 両方をスタックに積むことが出来る場合に、 スタック上のプリミティブはGCの邪魔になりました。 オブジェクトはクラス情報を持っていますが、プリミティブには持たせていません。 なぜなら高速性を期待してプリミティブはオブジェクトと区別したからです。 そこでどうしたらいいかと考え、オブジェクト用とプリミティブ用の 個別のスタックを用意したらどうだろうと考えたのですが、 何か考えられる問題点はありますか? また、ほかにいい方法はありますか? よろしく。
721 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 19:57:05 ] >>720 ここはお前専用の相談室だ。 よろしく。
722 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 20:25:02 ] >>720 GCの実装は?
723 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 20:53:31 ] つーか>>720 の言ってることよくわからんな。 スタックって何に使うスタックのこと言ってるのかわからないし、なんでそのスタックに積んであるものがGCされるのかもさっぱり。 プリミティブ値が邪魔になるってのも意味がわからん。
724 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 21:09:47 ] >>723 ……(;´Д`)アチャー
725 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 21:16:00 ] >>723 ( ゚д゚ )
726 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 22:52:51 ] >>723 (笑)
727 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 23:06:54 ] >>720 型システムが堅いなら系列分けたスタック持っても良いかもしれないが もし引数がバリアントみたいに使える言語処理なら徒労におわると思う
728 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 23:20:08 ] >>727 スタック上のプリミティブとオブジェクトを区別できないことから考えて、 構文として静的に区別できるような言語なんじゃないだろうか。 だったら分けても良いかも知れない。
729 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 23:27:16 ] >>728 ボクシングとかほしくなったら困るんじゃなかろうか(関数呼び出しフレーム作る時ね)
730 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 23:29:51 ] ボクシングしたものは全てオブジェクト扱いでイイような気がする。 箱に入れてさ。
731 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 06:09:40 ] 素直にプリミティブにタグ付けした方が良い希ガス。
732 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 07:46:50 ] オブジェクトのメンバの、ポインタと即値はどうやって区別してんだ?
733 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 12:00:11 ] >>732 型のある言語ならコンパイル時にGC対象を列挙できるので問題はないでしょ?
734 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 02:18:41 ] >>720 がもどってこなくてショボーン(´・ω・`) どんな言語なのか聞きたかったのに
735 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 02:31:01 ] >>734 ねー
736 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 09:46:37 ] 質問のレベルから察するとだな
737 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 19:25:02 ] チン子もえもえどぴゅーってレベルだな
738 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 20:27:29 ] スタックに積む量次第だけど、スタックに積むときだけプリミティブにタグ付けるのが 実装的には一番楽な気がする。
739 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 20:34:15 ] で、もうちょい話が進むと、プリミティブは常にタグつきがいいという話になる ちなみに、L(ry も R(ry も、そうなってたような
740 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 20:47:24 ] もう手抜きして保守的GCにしちまおうぜ
741 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 21:20:50 ] 可算無限個のメモリを用意するのが最近のトレンド。
742 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 23:20:12 ] >>739 LispとRuby? Rubyのprimitiveは最下位ビットが1になっているので 保守的GCに引っかからない、というものだったと思う。 Lispの実装は山ほどあるんでわからん。
743 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 23:42:47 ] >>741 黙れニート
744 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 20:20:23 ] LISPは今風の書き方ができない。 やっぱa.b.c.d().e.f.gとかしたいわけよ。 LISPで同じことしようとするとオペレータ毎いちいち括弧でくくらないとな。 (dot(dot(dot(call(dot(dot a b)c)d)e)f)g) もうなんだかわからん。 おっと、マクロにすりゃいいとか言い出すなよ。 俺はLISPを長年研究してきたから嘘は通じんぞ。
745 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 20:39:58 ] CLOSみたいにaccessorで触る仕組みにすると (g (f (e (d (c (b a)))))) のような感じになるかな。
746 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 21:07:10 ] (chain (a obj) (b it) (c it) (d it) (e it arg1 arg2)) みたいに書けるようにするのはマクロでできるよ。 Rubyでselectやらmapやらを繋げて配列を引き回していたりなんかすると、 ブロック+ドットよりもこっちの方がむしろ見易い気がする。
747 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 21:14:01 ] >>744 そういう風に華麗にかけるのはいいんだけど、デバッグするときにめんどくさくなんね? gの呼び出しで値がおかしくなってるんだけどどこで値がおかしくなってるのかわかんないみたいな。
748 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 21:28:46 ] >>746 で、誰がそんなアホなマクロ使うの? プロジェクト全体でそのマクロ使うように、 ルール決めしたりできる?www
749 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 21:55:53 ] >>744 引数を沢山とれるようにして (dot (call (dot a 'b 'c 'd)) 'e 'f 'g) でいいじゃん。
750 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 22:01:13 ] だから、んな誰も使うはずのないゴミを書いてみても 自己満足以外の意味ないだろ
751 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 23:26:44 ] vimのマクロはなにに影響されてできたもんなの?
752 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 00:00:43 ] >>744 | LISPは今風の書き方ができない。 | やっぱa.b.c.d().e.f.gとかしたいわけよ。 いや。そんな書き方したいと思ったことは一度もないんだが。
753 名前:744 mailto:sage [2006/09/14(木) 00:03:24 ] ふむ、ふむ。 予想通りのレスだな。 おれは結局フロントエンドを書いた。 しかし、それはもはやLISPではなく、 >>750 の言う通りでもあった。 LISPはリスト処理が得意なはずなのに、 こういった階層表現のオペレートが苦手なのは意外だった。 素直にLISPとして表現するならば、 (defvar a '(b (c (d (e (f (g value))))))) というタグ付きリスト階層を作り、 (cdadadadadadadar a) => value という操作を行う事だろうか。
754 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 00:34:25 ] >>744-753 マクロにする必要すらないんじゃ? ドットで繋ぐんだから実装はハッシュか何かだよね? Schemeで申し訳ないが (define (pp obj r) (if (null? r) obj (pp (ref obj (car r)) (cdr r)))) (define (p obj . r) (pp obj r)) で (p a 'b 'c 'd) と書けるよ。 あとはgauche限定?になるけど (define-method object-apply ((b <hash-table>) . c) (pp b c)) で (a 'b 'c 'd) と書ける。
755 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 01:45:33 ] だから、ゴミの実装の詳細なんぞ、 興味ねえから、チラシの裏にでも書いてろ
756 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 01:57:39 ] 744=750=755 ?
757 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 02:06:28 ] Lisp に絡んでいた奴がまた粘着してるのかねぇ? ↓のようなマクロじゃ気にくわないわけ? 例1: #{ a.b.c.d().e.f.g } 例2: #[ a b c #[ d ] e f g ] どっちでも好きなほうを選べ.
758 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 02:47:35 ] >>755 ではないが、>>744 の質問はスレ違いじゃないのか? 特定の実装(Lisp)の問題なんだから、Lispスレでやればいいじゃんと思った。
759 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 02:54:08 ] Lisper に喧嘩売ってる俺ってスゲー、みたいな奴が出てくるのは Lisp の功罪だな。 こんな事が後何回繰り返されるのだろうか。
760 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 03:23:00 ] Lisp スレで相手にしてもらえなかったんじゃないの? だからって関係ないこっちに来られても困るわけではあるが。
761 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 06:04:36 ] >>759 相対性理論が長きにわたって物理系のトンデモさんを 無数に相手にしてきたのと、ちょっと似てるね。
762 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 06:30:52 ] だーから相手にすんなって…すぐにまた LISP 最強!! とか暴れはじめる気配がする
763 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 06:51:13 ] 相対性理論、やっぱ無敵ってこと?それともダサダサってこと? 文章からどっちの意味か見えなかった。
764 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 07:05:01 ] 相対性理論とLispはどっちが難しいんだ?
765 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 07:52:51 ] それ自体がどうのではなく、名の通り方の問題だろう。 「挑戦者」達は、まず何より名前に噛み付いてる。
766 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 22:03:26 ] Lispの話になっても、Lisperのオナニーが多少見えるぐらいで、話は何にも広がらんのな
767 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 22:09:54 ] Lispのマクロってどんな感じなんでせう? 文法を自分で定義してシンタックスシュガーを作れるってイメージ?
768 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 22:25:34 ] ググれタコ
769 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 22:28:54 ] レス数増えたと思ったらやっぱりこれか
770 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 01:12:03 ] >>767 構文抽象ってやつだね。でも粘着が暴れるから別のスレで聞いたほうがいいとおもう。
771 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 01:16:34 ] >>767 後はコンパイル時にデータを生成したりとか。
772 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 03:25:42 ] >>744 俺は、a.b.c.d().e.f.gって書けるような S式みたいというかM式の一種というかC言語風の データ形式を考えてるけど、なかなか、難しいです。 簡単なschemeへのトランスレータは書いてみたけど、 なんか納得がいってません。 こう、ごちゃごちゃと考えがスパゲッティになってて どう考えを積み上げていったらいいのかわからない段階です。 とりあえず、c言語のセミコロンやカンマがどうして必要なのか? とか考えてます。
773 名前:772 mailto:sage [2006/09/15(金) 03:49:02 ] なんか、話が長くなりそうだし、 スレ作ってしまいました。 pc8.2ch.net/test/read.cgi/tech/1158259643/
774 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 13:24:14 ] >>772 >とりあえず、c言語のセミコロンやカンマがどうして必要なのか? カンマがないと、 1, -1 が 1-1 になっちゃうでしょ。
775 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 16:15:57 ] スペースをデリミタにすればカンマは必要ないと思うけど?
776 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 17:25:25 ] スペースをデリミタにするなよ
777 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 21:57:36 ] 改行をデリミタにすればセミコロンは必要ないと思うけど?
778 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 23:19:37 ] >>777 EcmaScriptとかはその戦略を採用しているな。 おかげで構文解析が死ぬほどめんどい。
779 名前:772 mailto:sage [2006/09/16(土) 02:44:14 ] >>774 2項演算子あるいは後置演算子と前置演算子に使われる演算子があった場合に 何らかのデリミタ(セパレータ?)が必要である。 てことですかねぇ。 他に、 名前のない括弧が前のカッコに結合しないようにする。 f()(1+2)と f();(1+2)みたいなかんじで。 みやすくするためにも存在してますよね。
780 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 03:40:14 ] java で実装されたスクリプトエンジンで、コルーチンの yield に相当する機能を実装したものはありますか? Jython がジェネレータの名称で実装していることは知っているのですが、他の実装も見てみたいのです。
781 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 15:48:29 ] >>776 forth
782 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 20:02:26 ] FORTHって絶対メジャーになれない言語の筆頭だよな。
783 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 20:10:41 ] >>782 PostScriptはメジャーじゃない、とおっしゃる?
784 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 20:21:13 ] >>782 となると、LISPもだな。
785 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 22:58:15 ] java仮想マシンもたしかFORTHだよな?
786 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 23:54:15 ] はい、違いますよ
787 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 23:56:54 ] >>785 誰に聞いたのよw
788 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 00:01:31 ] スタックマシンがすべてFORTHだというのであれば
789 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 00:15:31 ] PDFを書く言語ってあったか? それ。
790 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 03:22:01 ] FORTHをアーキテクチャとか言語分類とかのことだと思ってる奴がいるのか?
791 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 03:49:48 ] OpenFirmware も Forth だよ。
792 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 01:35:09 ] FORTHを信じても意味がなかった
793 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 02:08:16 ] >>792 そりゃFORCEじゃないのか?ルーク
794 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 02:09:45 ] Use the Force, 792. >>792 , trust me. Remember, the Force will be with you always.
795 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 12:37:38 ] Lisp最強!!!!!!
796 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 14:30:56 ] はいはい。 LISPは面白いもんを沢山残してったけど、 FORTHは言葉遊びが出てくる程度だったな。
797 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 14:33:37 ] FORTHって、普通に使われてる言語やん。
798 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 14:34:32 ] Lispは今では遊びと教育用の言語でしかなくて、実際に使われているのは知らない。
799 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 14:53:41 ] スタックが複数本必要な言語はロクなのがないね。
800 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 21:56:30 ] >>798 emacs 知らんの? 珍しいやっちゃな。
801 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 22:05:13 ] emacsが実際に使われていないということなんだろうけどな
802 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 01:53:34 ] PCLの2章より: An even more impressive instance of remote debugging occurred on NASA's 1998 Deep Space 1 mission. A half year after the space craft launched, a bit of Lisp code was going to control the spacecraft for two days while conducting a sequence of experiments. Unfortunately, a subtle race condition in the code had escaped detection during ground testing and was already in space. When the bug manifested in the wild--100 million miles away from Earth--the team was able to diagnose and fix the running code, allowing the experiments to complete.14 One of the programmers described it as follows: Debugging a program running on a $100M piece of hardware that is 100 million miles away is an interesting experience. Having a read-eval-print loop running on the spacecraft proved invaluable in finding and fixing the problem. ドキドキもんだろうけど、楽しそうな体験ではある。
803 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 04:03:57 ] >>801 何が?
804 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 07:49:42 ] この程度の流れも読めない馬鹿は書き込まないで下さい :-P
805 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 10:01:17 ] >>802 さらに衝撃的な遠隔デバッグが行われたのは、NASAが98年に打ち上げた、ディープ・スペース1号機におけるミッションでのことだった。 ロケットの打ち上げから半年、Lispの短いコードにロケットの制御を2日間委ねることになった時、ある一連の実験が進行中だった。 不運にも、わずかな競合状態がコードの中に含まれていたためで、地上での検査時に見つからないまま、宇宙空間に放たれてしまっていたのだ。 バグ発見の過酷な状況は、地球から1億マイルも離れた場所であったが、担当チームは稼動中のプログラムにメスを入れ、問題の修復に成功したことで、今回の実験は完遂されることになった。 担当したプログラマの一人が、当時の様子を次のように語った。 「あの時デバッグしたプログラムは、1億ドルのハードウェア上で、1億マイルも離れた場所で稼動していたんだけど、おもしろい経験になったよ。 read-eval-printループがあれば、ロケットの中で問題が起きても、発見したり修復するのに、量り知れないほど役立つことが証明されたってわけさ。」
806 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 12:44:29 ] むしろLispなんかで制御したから地上での検査時に 見つからなかったという恥ずべき歴史だな。
807 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 12:47:00 ] 「みんながLispに近づいているんじゃない! みんながLispを不必要にしているんだ!!」
808 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 13:16:59 ] PHPでいいです
809 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 16:07:51 ] いくない
810 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 16:09:57 ] >>806 本当にそう思うなら、匿名掲示板以外でも声高に言ってみろよ。 誰も相手にしてくれないけどな。
811 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 16:11:36 ] JavaScriptでいいです><
812 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 16:15:37 ] >>810 確かに、Lispなんていう死んだ言語の話をする相手が見つかるのは 夢想に責任をまったく持たなくていい匿名掲示板くらいでしょうね。
813 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 16:22:13 ] >>810 静的型付けのないLispが今でも一番だと思っている奴がいたら それこそお笑いだ。 スクリプティング言語の主流はいわゆるP言語だし、大学での 教育に使われる言語もMLやHaskellなど静的型付け&型推論の ある言語に移っている。
814 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 17:19:40 ] >>813 SICPを教科書に使う学科は多いだろうし、今でもLispは教育用言語として使われることが多い。 ラムダ計算のお勉強でも型なし→型ありという風に遷移・比較して教えられる事もあるだろうし、 教育用という意味では今でもLispは利用価値がある。
815 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 17:55:27 ] >>814 それが最近はSICPの評価は昔ほど高くない。 SICPの内容を最初からMLなどで教えているところもある。 つまるところ静的型付けがない言語をわざわざ大学で教える 必要性が薄らいでいるのさ。 にも関わらず Lisp is nice, so we are nice. な方の多いこと。(Rubyスレで見たレスのもじりだが。)
816 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 18:14:29 ] いい加減スレ違いだと思うんだけどな。
817 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 18:19:12 ] >>815 Lispはともかく、 型なしラムダ計算については?
818 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 18:33:09 ] >>817 形無しラムダ計算を教えるためにはLispが必要と考える理由が むしろ知りたい。
819 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 20:39:42 ] 形無しラムダ計算の本質はLispでないと表せない
820 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 21:36:04 ] >>818 型なしの関数型言語の代表格だからだよ。
821 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 21:37:13 ] 別に言語は何だっていいけど、Lispは勉強するのに必要な資料が一番多いんじゃないかな。
822 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 21:38:40 ] 紙と鉛筆で十分だが
823 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 21:41:26 ] Lisperの一部は鼻持ちならない選民思想の持ち主だが、 そうでない者も多い。 「Lisp一番!!」なレスはスルーでヨロ。
824 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 22:04:01 ] カステラ一番、Lispは二番!!
825 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 22:26:08 ] >>819 んじゃあ、形無しラムダ計算は発明から何十年もの間、 その本質は表現されなかったんだw
826 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 22:51:12 ] 実際Lispがなかったら埋まったままだったろうなあ
827 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 00:51:30 ] >>825 ここプログラム技術板だから。 (と、この説明で恥ずかしくならないようなら問題外 :-) )
828 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 02:00:59 ] >>825 Lisp はクソだが見当違いの叩きを展開するアホはもっとクソだ。 ここは叩くスレじゃねーんだ。バカは↓でも抱いて海に消えろ。 文句は直接開発者にでもメールしてろ。 強い型付き LISP: ttp://www.lambdassociates.org/qiml.htm
829 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 06:28:07 ] 言語ネタは叩き厨がファビョって荒れるんで Code Generation でも語ろうぜ JIT なんだけど GNU Liblightning ってどうなん?使ってるプロジェクトって qu 以外にある?
830 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 07:37:14 ] >>827 >>828 おまえらこそ流れを読まず見当違いのレスをするんじゃねーよ。 >>827 よ、お前が一番恥ずかしい。 >>828 よ、もはやLispではないものを持ってきてなんのつもりだ? Lispを叩いているんじゃない。 Lispが至高のものと信じて疑わず、言語開発者でもないくせに 多言語使用者を見下すだけの輩が日本に増えるのは有害だ。 もっと先を見ろ。SICPなんて初学者向けの本だ。 世界はもっと進んでいるぞ。
831 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 08:08:32 ] >>830 そのコピペどこかで見たな。元ネタは何だっけ?
832 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 08:16:50 ] 世界はもっと進んでいるぞのガイドライン ttp://ex13.2ch.net/test/read.cgi/gline/1139460483/
833 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 08:53:17 ] 型付きの LISP よりも、副作用がバンバン書ける SML が欲すぃ。
834 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 10:11:04 ] >>830 大学って初学者向きの授業をするところだと思うんですけど・・
835 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 17:30:18 ] >>830 もうちょっと「論理的に見えるこじつけ」を期待したんだけどなぁ。 それじゃあ自意識に潰されて暴走する中学生だよ、キミぃ。
836 名前:デフォルトの名無しさん [2006/09/20(水) 17:41:19 ] やっぱり>>835 のように、経験者の言葉は一味違うね。
837 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 18:11:42 ] Currying and Partial Applications Qi permits currying (10-) ((* 7) 8) 56 and also partial applications, which generate Lisp closures. (11-) (* 7) #<CLOSURE :LAMBDA (Z100983) (* 7 Z100983)> スゴス
838 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 18:22:46 ] Lisp (というよりS式)は中間言語に最適です、gcc でも使われてますし。
839 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 19:12:18 ] S式というよりツリー形式が本質なのでは?
840 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 22:51:54 ] 何でツリーの形式になるのか値?
841 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 16:20:44 ] squirrel-lang.org/ なんか、配列の中に、変数とか書ける。 どういう感じで実装しトンのかな。 Hash?
842 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 18:41:44 ] 単に statement というか block がファーストクラスオブジェクとして扱えるってことでは?
843 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 23:31:27 ] ttp://www.amazon.co.jp/gp/product/0321486811 これってさ、いつ出るんだかわからなかった21st Century Compilersが遂に出ました、ってこと?
844 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 23:46:18 ] うん。予定より章が減ってる気のせいがするけどね。
845 名前:デフォルトの名無しさん [2006/10/06(金) 03:41:19 ] このスレはLISPの話題が出ないと回らないんだな
846 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 10:00:22 ] つか、>>1 に書いてある話題のほとんどは全然出てこないw
847 名前:デフォルトの名無しさん [2006/10/06(金) 10:17:02 ] じゃ、質問してみる。 どうせ過疎ってることだし、あわよくば神が現れることを期待して。 >>1 に書いてある内容、どれでもいいから語ってください。 なぜそんなものが必要なのか。どんな意義があるのか。どこまで研究が進んでいるか。どこまで実装されているか。身近に有用な具体例はあるか。社会や倫理に与える影響はあるか。おまいはなぜそんなことまで知っているのか。LispやRubyとの関k(ry。などなど。
848 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 15:05:36 ] それは質問とは言わん
849 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 15:18:20 ] 言い出しっぺが語れよ
850 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 21:21:36 ] >>843 について語るとか。
851 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 22:33:06 ] >>850 Amazonに登録された当初、14,000円弱だったが日々値下がりしているので様子見中。
852 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 22:39:44 ] 俺言語ってどのくらいの人が作ってて、どれくらい完成してる? ちょっと前は俺言語作ってるって人webで良く見たんだが、 最近自分の見る範囲では現れない。 また、作ってるって人も全然進んでなさげ。
853 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 01:37:35 ] みんなもう飽きたんだよ
854 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 02:16:02 ] 手続き型にしか触らないで秋田とか言う人 Scheme面白いよ Lisperが何故偉そうに語るのかわかる
855 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 02:38:36 ] 手続き型にしか触らないで山形とか言う人 Prolog面白いよ 世界が変わるから一度試してみるといい いや、マジで
856 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 03:30:20 ] >>854 schemeおもしろいって・・ お前素人だろ?まるわかり。
857 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 03:31:08 ] >>855 学部2年生だろ?まるわかり。
858 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 03:31:45 ] >>852 高校生乙
859 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 03:32:49 ] 2chはもはや素人の集まりか。
860 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 04:40:42 ] >>859 はじめからなキガス >>852 組み込み用のUIハンドリング言語なら俺言語(つか社用言語)あるよ
861 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 06:09:48 ] prologみたいな変な言語って >>1 に書いてある様な即物的な技術と関係あるの?
862 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 07:59:55 ] prologのことは知らないが、>>1 にある技術って実際に世の中に広まってる処理系に使われてるの?
863 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 08:02:51 ] 即物的かどうかはしらんが、Prolog といえば David Warren が設計したWAM つー 仮想マシンが有名だよ。述語論理を直接マシンコードに〜とかやってるなかで、 「こんな機械があればいいじゃん」というアプローチは新鮮だった。興味があ るなら調べてみては。
864 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 09:32:39 ] >>862 prologのことだけじゃなく、何にも知らないんじゃん
865 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 09:38:52 ] prologのことは知らないが、>>1 にある技術がすべて実用化されていることは確かだ
866 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 11:47:42 ] >>862 当たり前じゃん
867 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 11:48:23 ] >>861 prologは定理証明支援系だから。
868 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 06:10:21 ] だから?
869 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 09:08:11 ] 伊代はまだ、16だから。
870 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 21:01:57 ] 未だにかよ>>869
871 名前:デフォルトの名無しさん [2006/10/09(月) 14:53:20 ] じゃ〜、>>900 を取ったやつが言語を作る!
872 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 14:56:25 ] 型付きオブジェクト指向言語でオープンクラスが可能な言語が良いのぅ
873 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 16:10:45 ] 公開授業?
874 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 16:33:38 ] オープンクラスってなんだよww ちなみに俺言語作ってる奴は、俺自身を除いて2人知っている。 ただ単に話題にならないから、無いものと思ったのかもね >>852 は。
875 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 16:38:29 ] 俺言語なんて無意味の極み
876 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 16:50:46 ] >>875 普通のアプリ作ってる分にはあんまり関係ないかもしれないが マイナーな環境だと俺言語(別に何かとコンパチでもいいが)じゃないと困る事もある。 つか困った事がある。
877 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 16:57:20 ] Open-Class considered harmful.
878 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 16:57:53 ] >>876 GAS使え
879 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 17:10:25 ] 俺言語っつーか、DSL(DSL:Domain Specific Language)はいるよね。
880 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 17:11:20 ] ゲームのスクリプト程度のものまで含めたら、結構みんな色々作ってるだろうけどね。 「言語」なる表現に並々ならぬ神聖性を見出している方々にも一切の難癖を付けられない、 いわゆる本格的な「言語」となると、なかなか居ないだろうなぁ。
881 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 17:16:52 ] Rubyは、代表的な俺言語なわけだがw
882 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 17:48:11 ] >>878 そうやって全部バイナリごりごり作ると入り切らない。 で、vmで処理単位を大きくした命令を処理するのだけど、そのままじゃやっていられない。 結局俺言語が導入されそのvmをエミュレートするPCを用意してそっちでデバッグ完了してから 実機へ導入になる。 つか組み込みで吝いCPUとメモリとかだとどうしようもない。 組み込み以外で極端だったのはポケットステーションくらいだが。
883 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:02:21 ] それって、俺言語じゃねえよ 俺言語ってのはやっぱり、 「これが俺の言語だ!どうだ!!」ってなやつのことだもん 「この環境で言語いるから、お前作れよ!」 ってな感じで作らされるのは、『お前言語』ってところだ
884 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:03:59 ] 「代表的な俺言語」っていうのは、宿命的に難しい定義だな。 こういう場で代表になれるような言語が、果たして今もなお俺言語の名にふさわしいかって点で。
885 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:05:32 ] >>883 チョトワロタ
886 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:05:38 ] >>883 それはつまり「開発することが手段ではなく目的である言語」というような感じかな。
887 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:10:32 ] 俺言語って、我流言語って事じゃないの? ちゃんと勉強した人が作った言語は、その人がアマチュアであっても俺言語じゃない。
888 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:13:30 ] ↑はい、「俺ローカル定義」でました
889 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:15:18 ] >>886 その定義に一票
890 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:16:45 ] 「俺」と「ローカル」はまぁ同義語ってわけじゃないけど、 この場合の「比喩的に用いられるローカル」は「俺」とかなりかぶってるから、 「俺ローカル定義」ってのはどうだろうなぁ。ちょっと響きがヌケてるかもしれないな。
891 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:35:11 ] >>886 じゃあ、やっぱり、Rubyは俺言語だw
892 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:37:09 ] 886の定義だと、ほとんどの言語が俺言語だろ。
893 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:43:21 ] すべては俺言語から始まった
894 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:52:29 ] >>891 Rubyはそれっぽいね。 Perlはラリーの仕事道具として生まれたみたいだけど。 >>892 んー、それはどうだろう。 「ここでこういうのがあると便利だから」っていう理由(これは「手段」だよね)が 一番多いような気がするけどなぁ。いや、気がするだけね、あくまで。
895 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:56:19 ] >>871 >>900 俺言語作れよ〜
896 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:57:02 ] >>894 >Perlはラリーの仕事道具として生まれたみたいだけど。 はぁ?じゃあ「開発することが手段ではなく目的である言語」じゃないじゃん。 「開発を始める時の動機が手段ではなく目的だった言語」だろ。
897 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:59:46 ] >>896 ごめんなさい。 君がキチガイにしか見えません。
898 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:01:43 ] 使えたら何でもいいのと違う?
899 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:03:31 ] >>897 大丈夫。キチガイはお前だよ。
900 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:04:03 ] >>896 だから、「Rubyは>>886 の定義に該当するね。Perlは違うけど」って言ってるんだろ>>894 は。
901 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:10:11 ] >>900 何いってんの? 886の定義 「開発することが手段ではなく目的である言語」 にPerlも該当するよ。昔はどうだか知らんが今はそうだろ? Perlはラリーの仕事道具として産まれたから俺言語の定義から外れるっつーなら、 886の定義は正しくは「開発を始める時の動機が手段ではなく目的だった言語」だろっていってんの。
902 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:12:28 ] 不毛な。
903 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:14:19 ] >>901 > っていってんの 今言ったのはわかるけど、さっきは言ってなかったね。
904 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:15:59 ] >>902 Perlの現状に関する自分の価値観を どさくさ紛れにアピールしてるだけの抵抗レスだからな。 「あんなのSFじゃない!」とかそういうのの仲間。
905 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:16:15 ] >>903 さっきも言ってるよ。
906 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:16:56 ] >>904 文盲?
907 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:21:53 ] >>906 寒いよお前。
908 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:25:56 ] 相変わらずスレタイから外れると伸びが良くなるな。 自分のレベルに落ちてきた途端に水を得た魚のように振る舞うのって、 露骨すぎると超笑えるぜ?w
909 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:26:21 ] 文盲に「寒いよ」といわれてもなぁ
910 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:31:38 ] 文盲って言葉が好きなんだなぁ、ボク。
911 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:33:11 ] >>908 「超笑えるぜ?」なんて、そんな水を得た魚のように言われると 超 笑 え る ぜ ? w
912 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:36:20 ] そんなに悔しかったのか。どおどおどお。とにかく落ち着こう。 興奮するともっと馬鹿に見えちゃうからねw
913 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:39:15 ] 流石に「超笑えるぜ?w」で悔しがる人は居ない。 どっちかというと、「超笑えるぜ?w」と言った人間が悔しいだろうな。
914 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:41:43 ] >>910 一度設定を固めたら、絶対その物語の中からしか言葉を紡ぎ出さない。 まぁ頭の弱い奴が最後まで場に立っていようとしたら、そういう 「"頭を使わないナンセンス"をまき散らして、相手に放置されるのを待つ」方法しか無いよw お前のその子供扱い設定も同じだな。まぁこうして指摘したから変えるかもしれんが、 そのままだったらその路線でずっと行ってたろどうせw
915 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:44:03 ] >>913 > 流石に「超笑えるぜ?w」で悔しがる人は居ない。 だよなぁ。 俺もまさか、こんなに悔しがる奴が現れるなんて思ってもみなかった。 いまどき字間なんか開けちゃうしさぁ。「あちゃ〜」みたいな失笑すら出てくるし。
916 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:45:13 ] 俺は超笑えるぜ路線でずっと行こう
917 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:45:15 ] 水を差すようで悪いけど、この不毛のスレは何時まで続くの?
918 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:46:23 ] >>915 残念だけど、そのレス悔しさがにじみ出てて、超笑えるぜ?w
919 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:48:13 ] Perlの歴史を語るスレに変わりました。
920 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:48:41 ] >>917 面白いのでずっと続きます
921 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 19:53:38 ] 歴史は誰も語ってないな。
922 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 20:09:03 ] >>921 そろそろ語られ始めると思う
923 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 20:22:05 ] Perlは1973年に産声を上げた。
924 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 20:56:40 ] 俺言語の話題が出てから凄い伸びてるな このスレの存在意義に関わるだけあるな
925 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 21:06:49 ] もう少し有意義なことを語ろうぜ。 perlについて語ってもしょうがないだろ?
926 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 21:16:13 ] >>844-845 のタイムスタンプみてもわかるように、話すことが無いんだよね
927 名前:デフォルトの名無しさん [2006/10/09(月) 21:31:34 ] じゃ〜、C#について語ろうよ。
928 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 00:27:45 ] スレの流れを無視して書き込むけどANTLR v3ってまだC++のターゲット吐けないの? Javaな連中はもう移行始めてるみたいなのに、リリース時にはサポートしてくれんのかな。
929 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 11:00:53 ] 何でもいいから >>900 は言語作ってくれよ〜
930 名前:デフォルトの名無しさん [2006/10/10(火) 16:33:59 ] Accessにテキストで格納された簡易な式を計算して、その結果をレポートに 印刷したいのですが、簡単にできる方法ないですか? VB版、lex/yaccみたいなの。または、MSXMLParserみたいな感じのものが どっかにあるはずだーと思って探してるんですけど、なかなか、、、 無ければ再帰下降パーサ書くんですけど、今後拡張ありだと思うので、 なるべくメンテし安い方法で作りたいのです。。。 何かアドバイスを!
931 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 16:42:23 ] MSXMLParserでいいなら、MSXMLParserをVBで使えばいいじゃないか
932 名前:デフォルトの名無しさん [2006/10/10(火) 18:30:38 ] 違った、、、MSXMLParserじゃダメなんです、、、
933 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 21:31:10 ] MSX-ML-Parser に見えた
934 名前:デフォルトの名無しさん mailto:sage [2006/10/10(火) 22:10:10 ] >>933 俺もそう見えた
935 名前:デフォルトの名無しさん [2006/10/11(水) 11:35:35 ] ついにMSXでもMLが動く時代になったということでOK?
936 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 13:45:21 ] >>935 いやいや、あくまでParserだけというところがポイントではないかと
937 名前:デフォルトの名無しさん [2006/10/11(水) 14:38:18 ] パーズして終わり?つかパーズだけかよっ!
938 名前:デフォルトの名無しさん [2006/10/11(水) 16:37:46 ] >>722 マークアンドスイープ。
939 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 16:51:44 ] サーチアンドデストロイ
940 名前:デフォルトの名無しさん [2006/10/11(水) 16:53:08 ] >>727-739 ありがとう参考にします。 >>727 型システムは硬いです。 >>728 そういうものを想定しています。 >>732 ポインタはありません。すべて参照という形にしています。 オブジェクトはクラス情報を持っています。 >>734 実は言語についてほとんど何も考えていません。 というか実装できていません。実験している程度の状態です。 動的に機械語を生成して実行する実験をしてみました。 実用的な速度で動くように感じました。 プリミティブ用のスタックをマシンスタックに統合できないかと考えています。 動的に機械語を生成する場合、コンパイルよりもリンクのほうが 難しいと感じました。(コーディング、実行に要する時間、双方について) 皆さんどうもありがとう。
941 名前:デフォルトの名無しさん mailto:sage [2006/10/11(水) 18:54:13 ] 次まだ〜?
942 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 06:22:28 ] schemeで効率的な継続の実装の参考になるような論文はありますか?
943 名前:930 [2006/10/12(木) 17:24:52 ] いや、まじで。VBで構文解析するとき皆どうしてんの、、、 JavaのStringTokenizerみたいなの無いの??
944 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 17:52:37 ] 俺はJavaScriptで構文解析したときは自分で書いたけど…
945 名前:デフォルトの名無しさん mailto:sage [2006/10/12(木) 20:10:47 ] >>943 ちゃちゃだが、StringTokenizer相当のものだと貧弱過ぎて、あっても大して構文解析の 助けにはならんと思うのだが。 それはともかく、VB用のParser Generatorはちょっと探した限りでは無いようだから、 自前で再帰下降の構文解析器書くか、既存のParser GeneratorをVBのコード吐く ように改造するかくらいしか無いんじゃない?もしもVB.NETだったら、C#用のParser Generatorを間接的に使うこともできるだろうけど。
946 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 11:16:23 ] 再帰下降くらい手で書いたほうが効率よさそう
947 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 11:37:24 ] 遅い梅速度にモルチョンペンポロストンカロスな気分です
948 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 17:41:17 ] VBはまったく知らないんだけど、eval()とかいうのを使うのじゃダメなの?
949 名前:初心者 mailto:sage [2006/10/13(金) 18:30:12 ] スレ違いかとは思いますが質問させて下さい 楽天などの注文ホームに住所など必要事項が瞬時に書き込めるスクリプトってありますか?
950 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 18:33:13 ] >>949 っpc7.2ch.net/test/read.cgi/software/1160097518/
951 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 18:38:11 ] スレ違いも甚だしいなw
952 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 18:51:26 ] 3分で的確な誘導をする950に感動
953 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 20:37:57 ] 3分で的確な次スレをたてる950に期待
954 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 21:27:15 ] >>949 どうしてここに来たの?それがすごく疑問なんだけど・・
955 名前:デフォルトの名無しさん mailto:sage [2006/10/13(金) 21:39:27 ] >>954 「スクリプトエンジン」を勘違いしたのでは?
956 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 00:09:17 ] コンパイラと関係ない話ばっかりじゃつまんね〜
957 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 00:46:12 ] じゃあLISPコンパイラについてでも語ってみようか。 どぞ!
958 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 00:54:32 ] 結局はオレ様ヴァーチャル・マシンを作れってことに収まる。
959 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 05:54:10 ] そしてオレ様命令セットの半分も組み込まない内に飽きるんだな
960 名前:デフォルトの名無しさん mailto:sage [2006/10/14(土) 08:28:58 ] www.lua.org/pil/12.1.2.html
961 名前:24 [2006/10/14(土) 23:11:13 ] サーバーはWIN2003デスデスクトップに2500のフォルダーの中のファイルをファイル単位で 一定時間経過(10日間)したファイルを自動削除するスクリプト を教えてください 素人より
962 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 00:02:37 ] >>961 そういう質問は例えば↓に誘導 WSH(・∀・)スレッド! pc8.2ch.net/test/read.cgi/tech/1055075469/l50
963 名前:デフォルトの名無しさん [2006/10/15(日) 08:22:24 ] ちょっと質問です。 ニモニック, オペランド, コード 見たいな感じで並んだia32用のcsvファイルってどこかにないですか? インテルのマニュアルに沿ったものがいいんですけど。 手作業に疲れてきました。
964 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 09:08:17 ] CSVファイルになるように自分でツール作れよ。 手作業とか、お前とってもアホだな。
965 名前:デフォルトの名無しさん [2006/10/15(日) 09:17:28 ] >>964 PDFからコピペしてるんだけど、なんかいい方法ある? 今やってるのは、コピペ→VSで正規表現使って整形。
966 名前:デフォルトの名無しさん [2006/10/15(日) 09:21:31 ] PDFはインテルのマニュアルのこと。 もしかするとマニュアルのどこかに表があったりする? 今は、目次からコピペしてニモニックを取り出す。 ニモニックごとのページからさらにコピペ。 VSで整形。 こういう方法。 CSVに出来たらエクセルでさらに整形しようと考えていたけど、 飽きてきた。
967 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 09:27:09 ] pdf2text
968 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 09:36:02 ] なんだ、単なる愚痴かよ。 確かに人間がやると退屈になるけどさ。
969 名前:デフォルトの名無しさん [2006/10/15(日) 09:42:59 ] >>967 いや、テキストにしたいだけならテキスト形式で保存するだけなんだけど、 そこから表にする方法が無いでしょ。 >>968 愚痴じゃなくって、表を探してる。 マシンコード生成→実行まで作ったんだけど、 今生成できるコードは20種類だけ。 プレフィックスごとに別のコードと考えるようにしたので、 本来は1000種類以上生成できないといけない。 で、表だけあれば生成できるようになるはずなんだけど、 っていうか、20種類までは実際に生成して実行できることを確かめてて 自信ある。 で、表がほしい。
970 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 09:46:17 ] perlやらawkやらでスクリプト書いてcsvにすればいいじゃまいか
971 名前:デフォルトの名無しさん [2006/10/15(日) 09:48:26 ] >>970 どういうアルゴリズムで? 人工知能とかそういうやつ?
972 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 09:53:33 ] as のソースとかに載ってるんじゃねーの?
973 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 09:57:24 ] 思うんだけどさ、コンパイラ?作れるのに、この程度の表を作れないってどういうことだ。 一時的にしか使わないような捨てスクリプト(正規表現)を使えばいいだろ? その程度のスキルなら、1000種類とか欲張らずに20種類でニンマリ満足していろ。
974 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 09:59:46 ] >>971 ・・・( ^ω^) おまいさんの言うニモニック,オペランド,コードってのはどーいうものかちょい説明してくれ インストラクションマニュアルから手作業でコピペというから別に凝ったもの作ろうと してるわけじゃないと解釈してたのだが、もっと込み入った表つくろうとしてるのか?
975 名前:デフォルトの名無しさん [2006/10/15(日) 10:02:30 ] >>973 C言語のスレからCの予約語表とBNFを自動生成するのと同じような命題でしょ? 簡単に出来るならやり方教えて。 やってみる。
976 名前:デフォルトの名無しさん [2006/10/15(日) 10:10:29 ] >>974 CALL "CALL" "E8 cw" "rel16" こういう表。
977 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:12:04 ] すっかり雰囲気が悪くなったな。
978 名前:デフォルトの名無しさん [2006/10/15(日) 10:12:47 ] ニモニックを定数として扱うためのリストは、 目次から生成済み。 何か規則性があれば、このリストを使って何とかできそうだけどなぁ。
979 名前:デフォルトの名無しさん [2006/10/15(日) 10:15:56 ] ふと思ったんだけど、 正規表現でどうにかなるってどういうことなんだろ? 正規表現で形態素解析できるとかなんか新技法なのか?
980 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:20:09 ] 正規表現でどうにかなるってことは正規表現がなくてもどうにかなるってことだ。 なぜなら正規表現は正規表現がなくても実装できるからだ!
981 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:24:05 ] なんで形態素解析が必要なんだ・・・ ある程度の法則に従って書かれてる文書から、必要部分を抽出したいだけだろ
982 名前:デフォルトの名無しさん [2006/10/15(日) 10:24:20 ] >>973 見て思った。 コンパイラ作るのに特別な技術なんていらないでしょ。 むしろ力仕事なのに。
983 名前:デフォルトの名無しさん [2006/10/15(日) 10:26:50 ] >>981 いやいや、マニュアルだから普通に日本語で書かれた説明書。 法則性はたぶん無いと思う。 日本語を処理するなら形態素解析とかかな〜〜って。
984 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:28:27 ] nasm やら gas やらのソースコードを見るのじゃダメなのか?
985 名前:デフォルトの名無しさん [2006/10/15(日) 10:30:26 ] >>984 見たことある?
986 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:30:38 ] 次の人次スレたてて プログラミング言語処理系の開発に興味のある人達のスレッドです。 字句解析・構文解析から,データフロー解析,ループ並列化,データ分散,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/ 関連リンクは多分 >>2-10 あたり
987 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:32:35 ] >>985 今 tcc のソースを見て来た。これで何が不満か分からん。
988 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:40:47 ] >>983 あーすまん、説明不足 例えば Instruction: Description: Operands: (その他色々) みたいに表題にしたがって、ずらずらと命令が書かれてるものなら 表題だけ見て抽出、いらんとこは無視とかできるでそって話
989 名前:デフォルトの名無しさん [2006/10/15(日) 10:46:07 ] >>987 i386-asm.h見たけど、これからはちょっと無理じゃないかなぁ。 あと、今作ってるマシンコード生成機って、 ぶっちゃけアセンブラそのものなんだけど、 アセンブラって呼んでいないのは、 スクリプト言語風味を作るために作ってるからなんだよね。
990 名前:デフォルトの名無しさん [2006/10/15(日) 10:55:06 ] >>988 それそれ、その表題に従ってずらずらと命令が書かれているのってどこにあるの? それがあればエクセルでどうにかなる。
991 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 10:59:17 ] pdos.csail.mit.edu/6.828/2006/readings/i386/c17.htm
992 名前:デフォルトの名無しさん [2006/10/15(日) 11:02:21 ] >>990 一部しか載ってないね。 でも、ありがと。
993 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 11:03:03 ] >>982 >コンパイラ作るのに特別な技術なんていらないでしょ。 テキストからトークンを取り出して表にする処理よりも コンパイラを作るのは大変だと思わないか? もしかしてyaccとか想定してるのか? 力仕事なら1000種類でも手作業でやればいいだろ。
994 名前:デフォルトの名無しさん [2006/10/15(日) 11:05:57 ] >>993 それ力仕事でしょ。 しこしこがんばって書けば済むだけ。 別に特別な技術じゃない。 大学で習う程度のことだよ。 そうじゃない? で、力仕事はめんどくさい。 それだけ。
995 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 11:06:26 ] マシン語を吐く所までは楽勝だが、本当に大変なのはライブラリ作成やオプティマイズだと 誰かが書いてたな。
996 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 11:06:31 ] intelのpdfマニュアルって上中下3つあるIA-32の解説でしょ? 昔落として(日本語)持ってるんだけど、もうインテルのサイトから落とせないでしょ。 新しいアーキテェクチャ用はどうやって手に入れるの?
997 名前:デフォルトの名無しさん [2006/10/15(日) 11:10:03 ] >>996 上中下4巻のやつ今でも見れるよ。 >>995 そうなんだろうね。
998 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 11:10:03 ] >>992 それ、検索して一番最初に出て来た奴を適当に貼っただけ。 ちょっと調べりゃ直ぐ出て来るのに、何で自分で調べないんだろうか。 どうでもいい事には饒舌なのに。
999 名前:デフォルトの名無しさん [2006/10/15(日) 11:11:00 ] >>998 いや、出てきてないから。
1000 名前:デフォルトの名無しさん mailto:sage [2006/10/15(日) 11:12:09 ] ↓次スレよろ
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。