The Ruby Programming Language [mirror]
Go to file
akr 99ee69b9f2 * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of
"miniruby".  [ruby-dev:28140]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-29 08:05:26 +00:00
bcc32 * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias 2005-11-05 04:43:46 +00:00
bin * bin/erb (ERB::Main::run): typo fixed. [ruby-core:06337] 2005-10-21 09:00:02 +00:00
cygwin * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias 2005-11-05 04:43:46 +00:00
djgpp
doc
ext * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLSocket#post_connection_chech): 2005-12-26 23:26:21 +00:00
lib * lib/generator.rb: reimplemented Generator class with Thread instead of 2005-12-29 02:29:26 +00:00
misc * misc/ruby-mode.el (ruby-expr-beg): support $! at the end of 2005-11-30 04:50:04 +00:00
missing * re.c (KR_REHASH): should cast to unsigned for 64bit CPU. 2005-11-23 05:11:18 +00:00
sample * lib/rss/maker/taxonomy.rb: implemented taxonomy module for RSS 2005-11-23 09:24:17 +00:00
test * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of 2005-12-29 08:05:26 +00:00
vms
win32 * win32/win32.c (rb_w32_strerror): remove all CR and LF. (avoid broken 2005-11-28 04:24:26 +00:00
wince * configure.in (RUBY_EXTERN): macro to export symbols in shared 2005-10-25 17:00:03 +00:00
x68
.cvsignore
.document
COPYING
COPYING.ja
ChangeLog * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of 2005-12-29 08:05:26 +00:00
GPL
LEGAL
LGPL
Makefile.in * Makefile.in (XCFLAGS): separated as well as win32/Makefile.sub. 2005-12-19 14:31:09 +00:00
README
README.EXT
README.EXT.ja
README.ja
ToDo
array.c * array.c (rb_ary_diff): fix a GC problem on IA64 with 2005-12-12 16:47:17 +00:00
ascii.c
bignum.c * bignum.c (rb_big_rshift): fix a GC problem on 2005-12-16 18:59:31 +00:00
class.c * class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff 2005-10-20 02:56:22 +00:00
common.mk * configure.in: define IA64 for portability. (HP aC++/ANSI C doesn't 2005-12-27 05:40:04 +00:00
compar.c * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to 2005-12-12 00:36:54 +00:00
config.guess
config.sub
configure.in update previous change. 2005-12-27 11:52:54 +00:00
defines.h * configure.in: define IA64 for portability. (HP aC++/ANSI C doesn't 2005-12-27 05:40:04 +00:00
dir.c * dir.c (has_magic): glob names contain alphabets to enable case fold 2005-12-14 14:40:14 +00:00
dln.c * dln.c (conv_to_posix_path): should initialize posix. 2005-11-26 11:01:01 +00:00
dln.h
dmydln.c
dmyext.c
enum.c * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to 2005-12-12 00:36:54 +00:00
enumerator.c * enumerator.c (enumerator_allocate): allow subclassing. 2005-10-27 11:35:24 +00:00
env.h * bin/erb (ERB::Main::run): typo fixed. [ruby-core:06337] 2005-10-21 09:00:02 +00:00
error.c
euc_jp.c
eval.c * eval.c (struct thread): add bstr_max. 2005-12-27 16:35:57 +00:00
file.c (rb_f_test): fix document. [ruby-dev:28087] 2005-12-21 09:20:15 +00:00
gc.c * configure.in: define IA64 for portability. (HP aC++/ANSI C doesn't 2005-12-27 05:40:04 +00:00
hash.c * class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff 2005-10-20 02:56:22 +00:00
ia64.s * ia64.s: remove .pred.safe_across_calls directive. 2005-12-28 05:14:10 +00:00
inits.c
install-sh
instruby.rb
intern.h * configure.in, eval.c, intern.h: check fd_mask type. 2005-11-11 17:11:05 +00:00
io.c * io.c (rb_f_backquote): fix a GC problem on 2005-12-19 17:11:20 +00:00
keywords
lex.c
main.c * configure.in: define IA64 for portability. (HP aC++/ANSI C doesn't 2005-12-27 05:40:04 +00:00
marshal.c * marshal.c (r_object0): fix a GC problem for reading a bignum on 2005-12-14 03:04:14 +00:00
math.c
mdoc2man.rb
missing.h * missing.h, missing/memcmp.c, missing/memmove.c: 2005-10-27 02:55:18 +00:00
mkconfig.rb * Makefile.in (OUTFLAG): keep trailing spaces. [ruby-dev:27666] 2005-11-10 23:22:03 +00:00
node.h * parse.y (struct parser_params): heap must be placed at same offset 2005-11-29 14:57:18 +00:00
numeric.c * configure.in: define IA64 for portability. (HP aC++/ANSI C doesn't 2005-12-27 05:40:04 +00:00
object.c precedes registering global VALUE variables before initializing it. 2005-12-12 03:04:53 +00:00
oniguruma.h
pack.c
parse.y * parse.y (rb_symname_p): fixed wrong validation. [ruby-dev:28047] 2005-12-19 14:33:11 +00:00
prec.c
process.c * process.c: new method Process.exec. [ruby-dev:28107] 2005-12-27 05:10:38 +00:00
random.c
range.c * range.c (range_cover): new method Range#cover? added. the 2005-12-12 01:01:29 +00:00
re.c * re.c (rb_reg_regcomp): fix a GC problem on x86_64 with 2005-12-13 03:27:51 +00:00
re.h
regcomp.c
regenc.c
regenc.h
regerror.c
regex.h
regexec.c
regint.h
regparse.c * regparse.c (fetch_token_in_cc): tok->escaped should be 2005-11-20 13:42:57 +00:00
regparse.h
ruby.1
ruby.c * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to 2005-12-12 00:36:54 +00:00
ruby.h * configure.in: define IA64 for portability. (HP aC++/ANSI C doesn't 2005-12-27 05:40:04 +00:00
rubyio.h
rubysig.h * rubysig.h (CHECK_INTS): fixed typo. (I believe bit-or is improper) 2005-10-21 10:23:03 +00:00
rubytest.rb
runruby.rb
signal.c * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to 2005-12-12 00:36:54 +00:00
sjis.c
sprintf.c * sprintf.c (rb_str_format): fix a GC problem. 2005-12-12 15:09:50 +00:00
st.c * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert 2005-12-19 14:10:36 +00:00
st.h
string.c * string.c (scan_once): wrong condition to use mbclen2(). 2005-10-27 08:18:38 +00:00
struct.c * intern.h, struct.c (rb_struct_iv_get): constified. 2005-10-21 06:46:41 +00:00
time.c * string.c (scan_once): wrong condition to use mbclen2(). 2005-10-27 08:18:38 +00:00
utf8.c
util.c * util.[hc] (ruby_add_suffix): constified. 2005-10-22 05:26:44 +00:00
util.h * eval.c (rb_call_super): should call method_missing if super is 2005-11-01 13:04:35 +00:00
variable.c * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to 2005-12-12 00:36:54 +00:00
version.c
version.h * 2005-12-29 2005-12-29 05:56:49 +00:00

README

* What's Ruby

Ruby is the interpreted scripting language for quick and
easy object-oriented programming.  It has many features to
process text files and to do system management tasks (as in
Perl).  It is simple, straight-forward, and extensible.


* Features of Ruby

  + Simple Syntax
  + *Normal* Object-Oriented features(ex. class, method calls)
  + *Advanced* Object-Oriented features(ex. Mix-in, Singleton-method)
  + Operator Overloading
  + Exception Handling
  + Iterators and Closures
  + Garbage Collection
  + Dynamic Loading of Object files(on some architecture)
  + Highly Portable(works on many UNIX machines, and on DOS,
    Windows, Mac, BeOS etc.)


* How to get Ruby

The Ruby distribution can be found on:

  ftp://ftp.ruby-lang.org/pub/ruby/

You can get it by anonymous CVS.  How to check out is:

  $ cvs -d :pserver:anonymous@cvs.ruby-lang.org:/src login
  (Logging in to anonymous@cvs.ruby-lang.org)
  CVS password: anonymous
  $ cvs -z4 -d :pserver:anonymous@cvs.ruby-lang.org:/src checkout ruby


* Ruby home-page

The URL of the Ruby home-page is:

   http://www.ruby-lang.org/


* Mailing list

There is a mailing list to talk about Ruby.
To subscribe this list, please send the following phrase

	subscribe YourFirstName YourFamilyName
e.g.
        subscribe Joseph Smith

in the mail body (not subject) to the address <ruby-talk-ctl@ruby-lang.org>.


* How to compile and install

This is what you need to do to compile and install Ruby:

  1. If ./configure does not exist or is older than configure.in,
     run autoconf to (re)generate configure.

  2. Run ./configure, which will generate config.h and Makefile.

  3. Edit defines.h if you need.  Probably this step will not need.

  4. Remove comment mark(#) before the module names from ext/Setup (or
     add module names if not present), if you want to link modules
     statically.

     If you don't want to compile non static extension modules
     (probably on architectures which does not allow dynamic loading),
     remove comment mark from the line "#option nodynamic" in
     ext/Setup.

  5. Run make.

  6. Optionally, run 'make test' to check whether the compiled Ruby
     interpreter works well.  If you see the message "test succeeded",
     your ruby works as it should (hopefully).

  7. Run 'make install'

     You may have to be a super user to install ruby.

If you fail to compile ruby, please send the detailed error report with
the error log and machine/OS type, to help others.


* Copying

See the file COPYING.


* The Author

Feel free to send comments and bug reports to the author.  Here is the 
author's latest mail address:

  matz@netlab.jp

-------------------------------------------------------
created at: Thu Aug  3 11:57:36 JST 1995
Local variables:
mode: indented-text
end: