mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	 4b0e5edaea
			
		
	
	
		4b0e5edaea
		
	
	
	
	
		
			
			* README.ja: separate inilne markups from multibyte sequence by spaces, so that another implementation can parse them properly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			192 lines
		
	
	
	
		
			7.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			192 lines
		
	
	
	
		
			7.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| = Rubyとは
 | ||
| 
 | ||
| Rubyはシンプルかつ強力なオブジェクト指向スクリプト言語です.
 | ||
| Rubyは最初から純粋なオブジェクト指向言語として設計されていま
 | ||
| すから,オブジェクト指向プログラミングを手軽に行う事が出来ま
 | ||
| す.もちろん通常の手続き型のプログラミングも可能です.
 | ||
| 
 | ||
| Rubyはテキスト処理関係の能力などに優れ,Perlと同じくらい強力
 | ||
| です.さらにシンプルな文法と,例外処理やイテレータなどの機構
 | ||
| によって,より分かりやすいプログラミングが出来ます.
 | ||
| 
 | ||
| 
 | ||
| == Rubyの特長
 | ||
| 
 | ||
| *   シンプルな文法
 | ||
| *   普通のオブジェクト指向機能(クラス,メソッドコールなど)
 | ||
| *   特殊なオブジェクト指向機能(Mixin, 特異メソッドなど)
 | ||
| *   演算子オーバーロード
 | ||
| *   例外処理機能
 | ||
| *   イテレータとクロージャ
 | ||
| *   ガーベージコレクタ
 | ||
| *   ダイナミックローディング (アーキテクチャによる)
 | ||
| *   移植性が高い.多くのUnix-like/POSIX互換プラットフォーム上で
 | ||
|     動くだけでなく,Windows, Mac OS X,BeOSなどの上でも動く
 | ||
|     cf. http://bugs.ruby-lang.org/projects/ruby-trunk/wiki/SupportedPlatformsJa
 | ||
| 
 | ||
| == 入手法
 | ||
| 
 | ||
| === 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/
 | ||
| 
 | ||
| === Gitで
 | ||
| 
 | ||
| SubversionのミラーをGitHubに公開しています.
 | ||
| 以下のコマンドでリポジトリを取得できます.
 | ||
| 
 | ||
|   $ git clone git://github.com/ruby/ruby.git
 | ||
| 
 | ||
| == ホームページ
 | ||
| 
 | ||
| RubyのホームページのURLは
 | ||
| 
 | ||
| http://www.ruby-lang.org/
 | ||
| 
 | ||
| です.
 | ||
| 
 | ||
| 
 | ||
| == メーリングリスト
 | ||
| 
 | ||
| Rubyのメーリングリストがあります。参加希望の方は
 | ||
| 
 | ||
| mailto:ruby-list-ctl@ruby-lang.org
 | ||
| 
 | ||
| まで本文に
 | ||
| 
 | ||
|    subscribe YourFirstName YourFamilyName
 | ||
| 
 | ||
| と書いて送って下さい。
 | ||
| 
 | ||
| Ruby開発者向けメーリングリストもあります。こちらではrubyのバ
 | ||
| グ、将来の仕様拡張など実装上の問題について議論されています。
 | ||
| 参加希望の方は
 | ||
| 
 | ||
| mailto:ruby-dev-ctl@ruby-lang.org
 | ||
| 
 | ||
| までruby-listと同様の方法でメールしてください。
 | ||
| 
 | ||
| Ruby拡張モジュールについて話し合うruby-extメーリングリストと
 | ||
| 数学関係の話題について話し合うruby-mathメーリングリストと
 | ||
| 英語で話し合うruby-talkメーリングリストもあります。参加方法
 | ||
| はどれも同じです。
 | ||
| 
 | ||
| 
 | ||
| == コンパイル・インストール
 | ||
| 
 | ||
| 以下の手順で行ってください.
 | ||
| 
 | ||
| 1.   もし +configure+ ファイルが見つからない、もしくは
 | ||
|      +configure.in+ より古いようなら、 +autoconf+ を実行して
 | ||
|      新しく +configure+ を生成する
 | ||
| 
 | ||
| 2.   +configure+ を実行して +Makefile+ などを生成する
 | ||
| 
 | ||
|      環境によってはデフォルトのCコンパイラ用オプションが付き
 | ||
|      ます. +configure+ オプションで <tt>optflags=..</tt> <tt>warnflags=..</tt> 等
 | ||
|      で上書きできます.
 | ||
| 
 | ||
| 3.   (必要ならば)+defines.h+ を編集する
 | ||
| 
 | ||
|      多分,必要無いと思います.
 | ||
| 
 | ||
| 4.   (必要ならば)+ext/Setup+ に静的にリンクする拡張モジュールを
 | ||
|      指定する
 | ||
| 
 | ||
|      +ext/Setup+ に記述したモジュールは静的にリンクされます.
 | ||
| 
 | ||
|      ダイナミックローディングをサポートしていないアーキテク
 | ||
|      チャでは +Setup+ の1行目の「<tt>option nodynamic</tt>」という行のコ
 | ||
|      メントを外す必要があります.また,このアーキテクチャで
 | ||
|      拡張モジュールを利用するためには,あらかじめ静的にリン
 | ||
|      クしておく必要があります.
 | ||
| 
 | ||
| 5.   +make+ を実行してコンパイルする
 | ||
| 
 | ||
| 6.   <tt>make check</tt>でテストを行う.
 | ||
| 
 | ||
|      「<tt>check succeeded</tt>」と表示されれば成功です.ただしテスト
 | ||
|      に成功しても完璧だと保証されている訳ではありません.
 | ||
| 
 | ||
| 7.   <tt>make install</tt>
 | ||
| 
 | ||
|      以下のディレクトリを作って,そこにファイルをインストー
 | ||
|      ルします.
 | ||
| 
 | ||
|      * <tt>${DESTDIR}${prefix}/bin</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/site_ruby</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/vendor_ruby</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/lib/ruby/gems/${MAJOR}.${MINOR}.${TEENY}</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/share/man/man1</tt>
 | ||
|      * <tt>${DESTDIR}${prefix}/share/ri/${MAJOR}.${MINOR}.${TEENY}/system</tt>
 | ||
| 
 | ||
|      RubyのAPIバージョンが'_x.y.z_'であれば,<tt>${MAJOR}</tt>は
 | ||
|      '_x_'で,<tt>${MINOR}</tt>は'_y_',<tt>${TEENY}</tt>は'_z_'です.
 | ||
| 
 | ||
|      <b>注意</b>: APIバージョンの +teeny+ は,Rubyプログラムのバージョ
 | ||
|      ンとは異なることがあります.
 | ||
| 
 | ||
|      +root+ で作業する必要があるかもしれません.
 | ||
| 
 | ||
| もし,コンパイル時にエラーが発生した場合にはエラーのログとマ
 | ||
| シン,OSの種類を含むできるだけ詳しいレポートを作者に送ってく
 | ||
| ださると他の方のためにもなります.
 | ||
| 
 | ||
| 
 | ||
| == 移植
 | ||
| 
 | ||
| UNIXであれば +configure+ がほとんどの差異を吸収してくれるはずで
 | ||
| すが,思わぬ見落としがあった場合(あるに違いない),作者にその
 | ||
| ことをレポートすれば,解決できるかも知れません.
 | ||
| 
 | ||
| アーキテクチャにもっとも依存するのはGC部です.RubyのGCは対象
 | ||
| のアーキテクチャが<tt>setjmp()</tt>または<tt>getcontext()</tt>によって全てのレ
 | ||
| ジスタを +jmp_buf+ や +ucontext_t+ に格納することと, +jmp_buf+ や
 | ||
| +ucontext_t+ とスタックが32bitアラインメントされていることを仮定
 | ||
| しています.特に前者が成立しない場合の対応は非常に困難でしょう.
 | ||
| 後者の解決は比較的簡単で, +gc.c+ でスタックをマークしている
 | ||
| 部分にアラインメントのバイト数だけずらしてマークするコードを
 | ||
| 追加するだけで済みます.<tt>defined(\_\_mc68000\_\_)</tt>で括られてい
 | ||
| る部分を参考にしてください.
 | ||
| 
 | ||
| レジスタウィンドウを持つCPUでは,レジスタウィンドウをスタッ
 | ||
| クにフラッシュするアセンブラコードを追加する必要があるかも知
 | ||
| れません.
 | ||
| 
 | ||
| 
 | ||
| == 配布条件
 | ||
| 
 | ||
| +COPYING.ja+ ファイルを参照してください。
 | ||
| 
 | ||
| 
 | ||
| == 著者
 | ||
| 
 | ||
| コメント,バグレポートその他は mailto:matz@ruby-lang.jp まで.
 | ||
| -------------------------------------------------------
 | ||
| created at: Thu Aug  3 11:57:36 JST 1995
 | ||
| --
 | ||
| Local variables:
 | ||
| mode: rdoc
 | ||
| end:
 |