- Rubyについて Part49
473 :デフォルトの名無しさん[sage]:2014/03/18(火) 00:11:34.84 ID:Gqc7z8M9 - >>471
応用しだいで変わるよ mrubyは組込み用途向けに設計された軽量インタプリタ実装だから、 最も単純な応用であれば、アプリケーションを実装した 1個のファイルを読み込むだけで済む
|
- Rubyについて Part49
481 :473[sage]:2014/03/18(火) 21:32:39.80 ID:Gqc7z8M9 - >>477
まず、Rubyには(CやJavaのような)分割コンパイル機能は存在しない もしやるとしたら、複数ファイルをロードしてから定義されている (モジュールやクラスといった)オブジェクトをシリアライズして ファイルへ保存することで実現できるかもしれないけど、 (自分は)実際にやったことは無いし、類似の技術情報を(自分は)知らない というか、現実にコードファイルの読み込み性能が重要となるケースが想像できない 一般にはアプリケーションの起動時(あるいは必要になった最初の1回)に実行されるから、 多くの応用、特にmrubyのようなアプリケーション組み込み用途だと、 コードファイルの読み込み時間は、システム性能の観点では無視できるはず もし重要になるケースがあるとすればHTTPリクエスト単位にアプリケーションが 起動されるCGIのケースだけど、mrubyならFastCGIを使えるから問題にならない 普通のRubyによるCGIの場合、CGIKit というHTMLテンプレートでは 複数のコードファイルを単純に結合することで読み込みの高速化を図っている もし興味があれば、CGIKitのパッケージをダウンロードして自分で調べてもらいたい
|
- プログラム板 強制ID導入議論スレッド
865 :デフォルトの名無しさん[]:2014/03/18(火) 21:44:45.40 ID:Gqc7z8M9 - 強制ID導入が刺激というかパワーの源になって
ハッスルしているだけのリアル厨房ならば、 そのうち飽きるだろうと思う これが、もしも現状が長く続くようであれば、 レス単価なバイトで雇われた意図的な荒らしかもしれない いずれにしても、煽りカキコへのレスは刺激の注入になるだけだから、 スレ住人達がスルー耐性を身につけることを学ぶしかないと思われ
|
- プログラム板 強制ID導入議論スレッド
869 :デフォルトの名無しさん[]:2014/03/18(火) 22:27:30.14 ID:Gqc7z8M9 - 荒らし君は連日多くのスレへ煽りカキコしているけど、
この板でよく知られている言語の中で、 まったく煽りを入れていない言語スレがある さーて、それはなんでそふか?
|
- C言語なら俺に聞け(入門編)Part 125
558 :デフォルトの名無しさん[sage]:2014/03/18(火) 22:55:44.93 ID:Gqc7z8M9 - >>548
一言でいえば、(C言語のような)静的型付け言語で動的型付けを実現する手法 そのコードであれば、データ型 A はコンパイル時に(=静的に)決定するけど、 実際の型である「整数 または 文字列」は実行時に(=動的に)決まる そして実行時には変数 type の値によって実際の型を判別する おそらくそのコードの周辺では、以下のような変数 type へ代入される 定数の一覧が定義されているはず const int NUM = 1; const int STRING = 2; ここで、「X または Y」を実現するために共用体 union が使われ、 その共用体と型判別変数とを組み立てるために構造体 struct が使われる なお、>>548のコードだと型判別変数はint型で宣言されているけど、 もし可能であるなら、以下のように列挙型で宣言することが望ましい enum type_t { NUM =1, STRING = 2 }; struct A { .... ; type_t type }; また、この手法はPascalやAdaといった言語では「可変レコード型(variant record type」として言語仕様の一部となっており、このC言語の手法を直接的に定義できる さらに、完全なデータ型システムを備えたMLやHaskellといった言語では、 可変レコード型よりも表現力が豊かでかつ型安全な仕掛けが提供されている
|
- Rubyについて Part49
485 :473[sage]:2014/03/18(火) 23:35:58.60 ID:Gqc7z8M9 - >>483
>>477の複数ファイルを1つにまとめる手法は ファイルのオープン性能(=ファイルの検索性能)が低い環境では 効果があるけど、>>483が想定する読み込み性能そのものが 絶対的に低い環境では、さほど効果があるとは思えない もし>>483の環境下でコードファイルの読み込み性能を改善するなら、 コードファイルの圧縮が効果的ではないかと思う たとえば、拡張子が .rbz であればZIP圧縮されたRubyスクリプトであると 解釈する特殊な requireメソッドを拡張ライブラリとして実装するとか.... で、ちょいと「ruby zip require」でググってみたら、こんな記事を見つけた ・Ruby/zipからrequireする方法 - TOBY SOFT wiki http://tobysoft.net/wiki/index.php?Ruby%2Fzip%A4%AB%A4%E9require%A4%B9%A4%EB%CA%FD%CB%A1 参考になるかな?
|