「コンパイラ・スクリプトエンジン」相談室16 (649レス)
「コンパイラ・スクリプトエンジン」相談室16 http://mevius.5ch.net/test/read.cgi/tech/1405822579/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
278: デフォルトの名無しさん [sage] 2015/09/20(日) 11:30:35.69 ID:O6Xw3ijC >>275-276 俺にも意味があるようには見えないけど、俺の知らない用途があるのかもしれない とにかくわからないならスルーしとけよ http://mevius.5ch.net/test/read.cgi/tech/1405822579/278
279: デフォルトの名無しさん [sage] 2015/09/20(日) 18:18:01.68 ID:tHziPwGz >>277 絶対真似しないと約束するなら教えてもいいぞ http://mevius.5ch.net/test/read.cgi/tech/1405822579/279
280: 261 [sage] 2015/09/20(日) 18:52:58.39 ID:oZCwg6h7 >>279 じゃぁ真似せずに似たようなものを考えつくまで考え抜きます。 私馬鹿なので。 http://mevius.5ch.net/test/read.cgi/tech/1405822579/280
281: デフォルトの名無しさん [sage] 2015/09/20(日) 20:15:16.31 ID:9UpT3677 >>274 BEAMは引数のMatchで分ける処理がVMにあるんでそういう意味でオモシロイコト -> BEAM参考になるんじゃねぇのって話です http://mevius.5ch.net/test/read.cgi/tech/1405822579/281
282: 261 [sage] 2015/09/20(日) 21:59:23.12 ID:oZCwg6h7 >>281 調べてみました。 BEAMだと実行時にモジュール名、関数名、及び引数の数を指定して呼び出す関数を同定するんですね。 実引数の数がコンパイル時には分かるから命令語に引数の数を組み込めるのだと思いますが…… 今考えてる言語だと、実引数の数が自明じゃないので使いにくい気がします。 助言、ありがとうございます。 http://mevius.5ch.net/test/read.cgi/tech/1405822579/282
283: デフォルトの名無しさん [] 2015/09/21(月) 19:55:02.85 ID:x6IKJHaI スクリプト型の言語って実行時にコンパイル(構文解析?)が発生するから、コンパイル型の言語より遅いのですよね。 では、アプリケーションの起動時にスクリプトを読み込んだ後のパフォーマンスは、スクリプト型もコンパイル型も大差ないのでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1405822579/283
284: デフォルトの名無しさん [sage] 2015/09/21(月) 20:31:03.01 ID:XzxcjOEi 大差あります http://mevius.5ch.net/test/read.cgi/tech/1405822579/284
285: デフォルトの名無しさん [sage] 2015/09/21(月) 21:42:55.66 ID:LoRahTLC >>283 「スクリプト型の言語」やら「コンパイル」やらが何を意味してるのかにも依りますが、 よくある速度重視の構成だと、読み込み時に構文解析や意味解析、中間コード生成を終わらせて 実行時に中間コードを(1)実行可能バイナリに変換するパターンと、(2)仮想マシン上でエミュレートするパターンとの二通りがあります。 (1)の場合は変換処理そのものがそれなりに重く、 しかも高度な最適化を掛けるとそれ自体に時間が掛かってしまうので 最適化は殆ど掛けられずコンパイラ型言語の2〜3倍は遅くなりますし、 (2)の場合は1命令実行するのに命令を読み込んで比較してジャンプして、 とCPUがアナログ回路上で並列処理してる計算を逐次的に実行するのでかなり重くなります。 http://mevius.5ch.net/test/read.cgi/tech/1405822579/285
286: デフォルトの名無しさん [sage] 2015/09/22(火) 13:12:55.44 ID:f7gaXzgp 比較にならない スクリプトは柔軟性重視なので速度を出すためのチューニングは後回しにされる 起動時にある程度最適化できるものもあるが、 最適化のために数十秒〜数分かけたりもできない また実行直前にならないと決まらない内容も多く無駄になってしまう そもそもコンパイラ型で速度重視のソフトを作る場合は 開発者自身やライブラリがメモリレイアウトなど制御し効率を考慮したコードを書く(書ける) http://mevius.5ch.net/test/read.cgi/tech/1405822579/286
287: デフォルトの名無しさん [sage] 2015/09/25(金) 18:30:15.12 ID:TpmuUHaP 自分でC言語っぽいスクリプト言語とかデータ形式作ってみたけど、どうだろ? ちなみにスクリプト言語はSC3_Compilerってのに入ってるが。 ttps://osdn.jp/users/mitubasa/pf/BuildContainer/files/ http://mevius.5ch.net/test/read.cgi/tech/1405822579/287
288: デフォルトの名無しさん [sage] 2015/09/26(土) 01:18:18.90 ID:4Rxec7m6 >>283 「スクリプト言語」の定義は難しいが、おおむね (1)(ユーザーから見て)明示的なコンパイルというフェーズを経ずに実行される (2)変数に型がない (3)実行時に行える処理の柔軟性が高い(例えば関数定義など) という特徴を持つ言語を指すことが多いだろう。RubyやPythonなど で、それぞれの特徴が、実行速度を遅くすることに貢献する。 (1)→ 最適化に時間を割けない (2)→ 実行時に、変数が指すオブジェクトの種類を調べる処理が毎回入る。 (3)→ これを実現するためにバイトコードインタプリタで実装されることが多く、遅くなる もちろん厳密な定義ではないので、あくまで「おおむね」という話。 Javascriptみたいな変態事例もあるし断定的なことは何も言えない 言葉の定義の論争は不毛 http://mevius.5ch.net/test/read.cgi/tech/1405822579/288
289: デフォルトの名無しさん [sage] 2015/09/26(土) 11:28:42.59 ID:GpPO3Mdd >>287 (一切実行せずに)サラッと眺めた感じだと 字句解析くらい生成系やライブラリ(flex++やboost::spirit等)に頼ってみたらどうかなってのはあるかな。 変数名としてnCount(整数,カウント)の代わりにixArg(添字,引数)を使うとか 細かいところは幾つかあるかも知れんけど、それなりに読みやすいと思うよ。 stdafx.cppって名前で使ってることは察したけど、VS使うんなら プロジェクト開くのに必要なファイル(.sln等)を入れるとか、 或いはMinGW/Cygwin/msys2なんかのUnix系ツールでさくっとビルドできるようにcmakeを書くとかしておくと 評価する人が増えると思うよ。 http://mevius.5ch.net/test/read.cgi/tech/1405822579/289
290: デフォルトの名無しさん [sage] 2015/10/04(日) 21:40:28.41 ID:Qeh3kLaJ おれバカで不勉強だから知らなかったえけど、最近の処理系って状態コードのお持ち帰りをしてくれるんだね 手続きAを呼んだ直後にグローバルな状態変数に何がしかの情報が入ってる(何も起きなかったとか、フックして停止させるの推奨みたいな) 面白いな〜 データを加工して返すー>関数(関数内で処理のフローに関係する記述は禁止) 処理のフローに関係するー>手続き(状態コードを標準で返す) 複数個所使うで同じ様な処理をまとめるー>サブルーチン(スタックフレームの無いローカルな手続き) プログラムを組み上げるときの構造や構成に行儀のよい作法がないと プログラムのどの時点でどのデータがどの構成や状態にあるのか把握ができなくて発狂するww で、なんでも記述できる自由度の高い処理系ほど読解困難な発狂プログラムが出来上がると http://mevius.5ch.net/test/read.cgi/tech/1405822579/290
291: デフォルトの名無しさん [sage] 2015/10/05(月) 23:32:01.45 ID:F9TK8Py4 >>290 状態コードのお持ち帰りって何? http://mevius.5ch.net/test/read.cgi/tech/1405822579/291
292: デフォルトの名無しさん [sage] 2015/10/06(火) 02:07:01.38 ID:mXRqVUnf 何を言ってるのかさっぱりワカラン… http://mevius.5ch.net/test/read.cgi/tech/1405822579/292
293: デフォルトの名無しさん [sage] 2015/10/06(火) 02:50:21.48 ID:rErEEAIK クロージャのことかな・・・ 最初Smalltalkやlispの環境のことかと思ったけど http://mevius.5ch.net/test/read.cgi/tech/1405822579/293
294: デフォルトの名無しさん [sage] 2015/10/06(火) 10:51:51.85 ID:SQrzN3D5 coroutineだったりして? http://mevius.5ch.net/test/read.cgi/tech/1405822579/294
295: デフォルトの名無しさん [sage] 2015/10/06(火) 13:56:11.40 ID:6X8NqiS5 継続じゃないの 俺は気持ち悪いとしか思わんけど http://mevius.5ch.net/test/read.cgi/tech/1405822579/295
296: デフォルトの名無しさん [sage] 2015/10/06(火) 14:17:39.64 ID:ztjfyQaD なんでも記述できる自由度の高い言語ほど…… http://mevius.5ch.net/test/read.cgi/tech/1405822579/296
297: デフォルトの名無しさん [sage] 2015/10/06(火) 22:40:32.31 ID:KmJ2byjS (PEEK/POKEで)なんでも記述できる自由度の高いBASIC言語はいかがですかー http://mevius.5ch.net/test/read.cgi/tech/1405822579/297
298: デフォルトの名無しさん [sage] 2015/10/07(水) 11:46:38.15 ID:YlJ45J+b 文字通りステートコードの事じゃね? Unixが何十年も前に確立してるけど # make && make install http://mevius.5ch.net/test/read.cgi/tech/1405822579/298
299: デフォルトの名無しさん [sage] 2015/10/11(日) 09:14:44.03 ID:yW9ExgL4 なんか意味不明なこと書いてすいません ステートコードで正しいと思います。 バカ正直に戻り値だけと思い込んでいたので さっき、vs2013のc++起動して、構成プロパティでx64とアセンブラコードの出力に設定して c++の入門書を買うか悩むこと5分 lispの実装でググって15分 考えるのやめて現実逃避中orz 一番自由度の高いのはアセンブラ(当たり前だけど) ただし、全て自己責任(自由度が高い=自己責任ですよ〜) なんか、適当なスクリプト言語が作れないかなと http://mevius.5ch.net/test/read.cgi/tech/1405822579/299
300: デフォルトの名無しさん [sage] 2015/10/11(日) 16:02:56.87 ID:e7nwHPrn >>299 「自由度」の定義は何?確かに「そのマシンで出来ることがなんでも記述できる」ならアセンブリほぼ一択だけど、 例えば「その言語のプリミティブと同等な機能を作れる」ならCommon Lispは自由度が高いし(マクロ最高!)、 或いは「その言語のプリミティブの機能を別な機能に変更出来る」ならTeXは自由度が高いよね(TeXの\endプリミティブが、なんとLaTeXでは違う機能に置き換わってる)。 例えば「その言語の文法を変えられる」って意味ならswiftやprologなんかは自由度が高い例になるだろうし、 仮にそれらの意味であればアセンブリ言語なんて自由度の欠片もない言語の一つになるよ。 適当なスクリプト言語が作りたいならHQ9+かbrainfuckか何かを作ればいいと思うよ という冗談はさておき、そのスクリプト言語で何をやりたいかによって色々変わってくるよね。 テキスト処理ならgrepやsed、awkやperlなんかは参考になるだろうし、 統計処理や数式処理なんかはRやmathematicaが有名所かな。 読みやすさ重視ならある意味ではCOBOLやBASICが、別な意味ではpythonやrubyが「読みやすさ」を重視した言語として有名だし とにかく簡単な文法にしたいならlispやpostscriptなんかが興味深い例ではある。 特殊用途向けの言語が作りたいか、汎用的な言語が作りたいか 汎用的な言語であれば手続き型か関数型か論理型か、関数や型はファーストクラスオブジェクトか、どんな文法か。 特殊用途向けの言語であればどんな用途で使うのか。 ノベルゲーム制作の補助向け(NScripter/吉里吉里等)なのか、文法記述用(regex/LR/PEG等)なのか、画像や構造を記述するもの(svg/postscript等)なのか。 http://mevius.5ch.net/test/read.cgi/tech/1405822579/300
301: デフォルトの名無しさん [sage] 2015/10/12(月) 16:27:55.78 ID:xsIpokn9 >>300 丁寧な指摘ありがとうございます。 実際にVS2013をインストールしc++の入門を開いてブレイクポイントーデバッグーアセンブラの表示までたどりつきました 実際のアセンブラのコードを見て少し頭を抱えたしだいです int a,b,c; a=1; b=a/2*2; たったこれだけのコードのアセンブラ出力も、符号拡張命令後の処理の意味が汲み取れませんでした 取り合えず高度な目標はありません NanaTerryなるアイデアプロセッサを使ってみたらとても使い心地が良かったので これをシンプルな機能に絞って実装する、そんなプログラムやアイデアを綴るTEXTを扱うtoolを 作りだす為の仕様に絞って色々検討しています。 低機能なlispっぽいなにかになる予定 最近はcコンパイラの実装まで大学のカリキュラムにあると聞いたので凄く刺激を受けました 実際c++の入門などを読んでも言語の仕様に何等かの違和感があるのです http://mevius.5ch.net/test/read.cgi/tech/1405822579/301
302: デフォルトの名無しさん [sage] 2015/10/12(月) 18:59:19.08 ID:ATBGiUj9 こいつ覚えたての言葉を使いたいだけのワナビーだろ おそらくスレ違いなのにも気づいてないし相手すること無いぞ http://mevius.5ch.net/test/read.cgi/tech/1405822579/302
303: デフォルトの名無しさん [sage] 2015/10/12(月) 19:02:17.18 ID:qifYD3R8 パラドックスが始まった http://mevius.5ch.net/test/read.cgi/tech/1405822579/303
304: デフォルトの名無しさん [] 2015/12/09(水) 21:43:53.38 ID:yqcBT5mk CでCを作るのと、アセンブラ使ってCコンパイラを作るのと、 どっちが良いかな? http://mevius.5ch.net/test/read.cgi/tech/1405822579/304
305: デフォルトの名無しさん [sage] 2015/12/09(水) 23:21:35.10 ID:0CTdrHjr CでCを作る時間をCでXを作る時間に充てるのが良い http://mevius.5ch.net/test/read.cgi/tech/1405822579/305
306: デフォルトの名無しさん [] 2015/12/10(木) 03:57:42.43 ID:zEe7T/5S >>1 デュエル・マスターズ Android版 ,i-OS版、公式 http://dm.takaratomy.co.jp/extra/dmapp/entrygate_ds/ デュエル・マスターズ対戦CGI ex https://web.archive.org/web/20150809154946/http://www53.atwiki.jp/dmsuishinparty/pages/314.html デュエル・マスターズ(デュエマ)DM ONLINE 1.8a / VanGuard ONLINE 1.5a https://web.archive.org/web/20150809160254/http://uhyohyohyo.sak ura.ne.jp/hsp.html ヴァンガード専用ネット対戦ツール【 VanGuard Online 】 https://web.archive.org/web/20150809155032/http://kiimaa.jugem.jp/?eid=61 「カードファイト!!ヴァンガード」のネット対戦ができる公式オンラインゲーム「Cardfight!! Online」 2015年冬スタート https://web.archive.org/web/20150809153724/http://supersolenoid.blog63.fc2.com/blog-entry-6886.html 遊戯王 Automatic Dueling System https://web.archive.org/web/20150809164855/http://www3.atwiki.jp/ads-wiki/pages/20.html 遊戯王 デュエル・オンライン https://web.archive.org/web/20150809171527/http://www31.atwiki.jp/vipdo/pages/15.html https://web.archive.org/web/20140628005202/http://do.yugioh-portal.net/ WIXOSS WEBXOSS http://webxoss.com/about_en.html http://webxoss.com/DeckEditor/ BG(ボードゲーム)Engine https://web.archive.org/web/20151209080842/https://bgengine.net/ https://web.archive.org/web/20151209172205/http://14owl.hateblo.jp/entry/2015/12/09/011234 アプレンティス マジック:ザ・ギャザリング(MtG)オンライン化 http://homepage1.nifty.com/Q_Q/ap.html https://web.archive.org/web/20151202202725/http://homepage1.nifty.com/Q_Q/ap.html http://mevius.5ch.net/test/read.cgi/tech/1405822579/306
307: デフォルトの名無しさん [] 2015/12/10(木) 04:01:27.83 ID:zEe7T/5S 【 オンラインTCGエディター 】 >>1,>>306 デュエル・マスターズ的な非電源TCGの 《 オンライン化ツクール系ソフト 》 制作の企画。 例えば、ガチンコ・ジャッジを直ぐにでも導入できる機能を持っておりながら、 当面それを扱わず単純化させておいて、事後的に導入拡張する際に当該システムを ブロック構造の組み合わせで後付け挿入できるように予めシステム化してあるソフト(エディター)。 既存の非電源TCGを劣らずに再現できるならば大概のニーズに応えられる筈。 デュエマ、ヴァンガ、ウィクロス、ポケカ、デジモン、ゼクス、モンコレ、旧ガンダム・ウォー、ライブオン、ディメンション・ゼロ、シャーマン・キング、カードヒーローなど のシステムを完全再現できるように設計するけど、他に此のTCGの此のシステムは再現希望とか有ったら書いて。 マジック:ザ・ギャザリングの全システムを完全に再現するのは無理だから、此れだけは必用だ!って部分のみリクエストして。 WEB通信での対戦は、個vs個、多数乱戦、チームvsチーム、個vsチームを可能な仕様とする方針。 設計思想は 《 RPGツクール 》 が良いかな? 他に、優れたエディター有ったら挙げてみて。 個人や企業などのベンダーが提示する開発費(見積もり)で折り合えば、発注する。 ↓ エディター群から基本コンセプトを絞り込む(もちろんオリジナルで優れた新ネタが有れば導入する)。 ↓ 遊戯王OCGに関しては、タッグフォース、ADS、デュエルオンラインを発注先ベンダーに研究させる。 バトスピ、ヴァンガ、デュエマなど発売済みゲームソフトが存在してるTCGはベンダーに研究させる。 ↓ 各社TCGを再現するテストプレイ ⇒ 更に改良や修正。 ↓ 機能制限した下位版を制作しても原則として発売せず + 上位版デュエリ−グ用でサーバー稼動。 ↑ 下位版を仮に発売した場合の改造および商用利用には、別途で当社との契約が必要。 さ〜て、インド人ベンダーと日本人の翻訳兼PGを見つけよっと!ww http://wc2014.2ch.net/test/read.cgi/entrance2/1449623194/-18 http://mevius.5ch.net/test/read.cgi/tech/1405822579/307
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 342 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.020s