mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			156 lines
		
	
	
	
		
			4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			156 lines
		
	
	
	
		
			4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
* Rubyとは
 | 
						||
 | 
						||
Rubyはシンプルかつ強力なオブジェクト指向スクリプト言語です.
 | 
						||
Rubyは最初から純粋なオブジェクト指向言語として設計されていま
 | 
						||
すから,オブジェクト指向プログラミングを手軽に行う事が出来ま
 | 
						||
す.もちろん通常の手続き型のプログラミングも可能です.
 | 
						||
 | 
						||
Rubyはテキスト処理関係の能力などに優れ,Perlと同じくらい強力
 | 
						||
です.さらにシンプルな文法と,例外処理やイテレータなどの機構
 | 
						||
によって,より分かりやすいプログラミングが出来ます.
 | 
						||
 | 
						||
 | 
						||
* Rubyの特長
 | 
						||
 | 
						||
  + シンプルな文法
 | 
						||
  + 普通のオブジェクト指向機能(クラス,メソッドコールなど)
 | 
						||
  + 特殊なオブジェクト指向機能(Mixin, 特異メソッドなど)
 | 
						||
  + 演算子オーバーロード
 | 
						||
  + 例外処理機能
 | 
						||
  + イテレータとクロージャ
 | 
						||
  + ガーベージコレクタ
 | 
						||
  + ダイナミックローディング (アーキテクチャによる)
 | 
						||
  + 移植性が高い.多くのUNIX上で動くだけでなく,DOSやWindows,
 | 
						||
    Mac,BeOSなどの上でも動く
 | 
						||
 | 
						||
 | 
						||
* 入手法
 | 
						||
 | 
						||
** FTPで
 | 
						||
 | 
						||
以下の場所においてあります.
 | 
						||
 | 
						||
  ftp://ftp.ruby-lang.org/pub/ruby/
 | 
						||
 | 
						||
** Subversionで
 | 
						||
 | 
						||
開発先端のソースコードは次のコマンドで取得できます.
 | 
						||
 | 
						||
  $ svn co http://svn.ruby-lang.org/repos/ruby/trunk/ ruby
 | 
						||
 | 
						||
他に開発中のブランチの一覧は次のコマンドで見られます.
 | 
						||
 | 
						||
  $ svn ls http://svn.ruby-lang.org/repos/ruby/branches/
 | 
						||
 | 
						||
 | 
						||
* ホームページ
 | 
						||
 | 
						||
RubyのホームページのURLは
 | 
						||
 | 
						||
   http://www.ruby-lang.org/
 | 
						||
 | 
						||
です.
 | 
						||
 | 
						||
 | 
						||
* メーリングリスト
 | 
						||
 | 
						||
Rubyのメーリングリストがあります。参加希望の方は
 | 
						||
 | 
						||
   ruby-list-ctl@ruby-lang.org
 | 
						||
 | 
						||
まで本文に
 | 
						||
 | 
						||
   subscribe YourFirstName YourFamilyName
 | 
						||
   
 | 
						||
と書いて送って下さい。 
 | 
						||
 | 
						||
Ruby開発者向けメーリングリストもあります。こちらではrubyのバ
 | 
						||
グ、将来の仕様拡張など実装上の問題について議論されています。
 | 
						||
参加希望の方は
 | 
						||
 | 
						||
   ruby-dev-ctl@ruby-lang.org
 | 
						||
 | 
						||
までruby-listと同様の方法でメールしてください。 
 | 
						||
 | 
						||
Ruby拡張モジュールについて話し合うruby-extメーリングリストと
 | 
						||
数学関係の話題について話し合うruby-mathメーリングリストと
 | 
						||
英語で話し合うruby-talkメーリングリストもあります。参加方法
 | 
						||
はどれも同じです。 
 | 
						||
 | 
						||
 | 
						||
* コンパイル・インストール
 | 
						||
 | 
						||
以下の手順で行ってください.
 | 
						||
 | 
						||
  1. もしconfigureファイルが見つからない、もしくは
 | 
						||
     configure.inより古いようなら、autoconfを実行して
 | 
						||
     新しくconfigureを生成する
 | 
						||
 | 
						||
  2. configureを実行してMakefileなどを生成する
 | 
						||
 | 
						||
  3. (必要ならば)defines.hを編集する
 | 
						||
 | 
						||
     多分,必要無いと思います.
 | 
						||
 | 
						||
  4. (必要ならば)ext/Setupに静的にリンクする拡張モジュールを
 | 
						||
     指定する
 | 
						||
 | 
						||
     ext/Setupに記述したモジュールは静的にリンクされます.
 | 
						||
 | 
						||
     ダイナミックローディングをサポートしていないアーキテク
 | 
						||
     チャではSetupの1行目の「option nodynamic」という行のコ
 | 
						||
     メントを外す必要があります.また,このアーキテクチャで
 | 
						||
     拡張モジュールを利用するためには,あらかじめ静的にリン
 | 
						||
     クしておく必要があります.
 | 
						||
 | 
						||
  5. makeを実行してコンパイルする
 | 
						||
 | 
						||
  6. make testでテストを行う.
 | 
						||
 | 
						||
     「test succeeded」と表示されれば成功です.ただしテスト
 | 
						||
     に成功しても完璧だと保証されている訳ではありません.
 | 
						||
 | 
						||
  7. make install
 | 
						||
 | 
						||
     rootで作業する必要があるかもしれません.
 | 
						||
 | 
						||
もし,コンパイル時にエラーが発生した場合にはエラーのログとマ
 | 
						||
シン,OSの種類を含むできるだけ詳しいレポートを作者に送ってく
 | 
						||
ださると他の方のためにもなります.
 | 
						||
 | 
						||
 | 
						||
* 移植
 | 
						||
 | 
						||
UNIXであればconfigureがほとんどの差異を吸収してくれるはずで
 | 
						||
すが,思わぬ見落としがあった場合(あるに違いない),作者にその
 | 
						||
ことをレポートすれば,解決できるかも知れません.
 | 
						||
 | 
						||
アーキテクチャにもっとも依存するのはGC部です.RubyのGCは対象
 | 
						||
のアーキテクチャがsetjmp()によって全てのレジスタを jmp_bufに
 | 
						||
格納することと,jmp_bufとスタックが32bitアラインメントされて
 | 
						||
いることを仮定しています.特に前者が成立しない場合の対応は非
 | 
						||
常に困難でしょう.後者の解決は比較的簡単で,gc.cでスタックを
 | 
						||
マークしている部分にアラインメントのバイト数だけずらしてマー
 | 
						||
クするコードを追加するだけで済みます.「defined(THINK_C)」で
 | 
						||
括られている部分を参考にしてください
 | 
						||
 | 
						||
# 実際にはRubyはThink Cではコンパイルできません.
 | 
						||
 | 
						||
レジスタウィンドウを持つCPUでは,レジスタウィンドウをスタッ
 | 
						||
クにフラッシュするアセンブラコードを追加する必要があるかも知
 | 
						||
れません.
 | 
						||
 | 
						||
 | 
						||
* 配布条件
 | 
						||
 | 
						||
COPYING.jaファイルを参照してください。
 | 
						||
 | 
						||
 | 
						||
* 著者
 | 
						||
 | 
						||
コメント,バグレポートその他は matz@netlab.jp まで.
 | 
						||
-------------------------------------------------------
 | 
						||
created at: Thu Aug  3 11:57:36 JST 1995
 | 
						||
Local variables:
 | 
						||
mode: indented-text
 | 
						||
end:
 |