The Ruby Programming Language [mirror]
Go to file
shyouhei e247c4e598 set svn:eol-style
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@11708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-12 23:01:19 +00:00
bin This commit was manufactured by cvs2svn to create branch 'ruby_1_6'. 2002-11-18 17:43:20 +00:00
cygwin * cygwin/GNUmakefile: allow "B" type in defined symbols. 2003-11-02 08:57:34 +00:00
djgpp This commit was manufactured by cvs2svn to create branch 'ruby_1_6'. 2003-01-13 05:32:39 +00:00
doc Clarify that this file is not actively maintained. 2002-12-01 09:08:14 +00:00
ext * ext/socket/extconf.rb: Merge from 1.8: explicity specify 2004-04-16 05:01:34 +00:00
lib * eval.c (method_arity): should handle NODE_BMETHOD and 2004-10-24 23:37:23 +00:00
misc * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): syntax 2003-01-09 16:26:43 +00:00
missing * gc.c (is_pointer_to_heap): avoid GCC 3.1 warnings. 2002-05-14 06:10:51 +00:00
sample * dir.c (push_braces): do not push_braces() unless rbrace is found. 2003-05-19 16:20:30 +00:00
win32 * win32/win32.c (flock): maps error code. 2003-02-28 13:54:01 +00:00
x68 Initial revision 1998-01-16 12:13:05 +00:00
.cvsignore .cvsignore: add autom4te*.cache. 2002-03-26 06:44:52 +00:00
COPYING * process.c (rb_syswait): thread kludge; should be fixed to 2002-02-25 09:18:09 +00:00
COPYING.ja This commit was manufactured by cvs2svn to create branch 'ruby_1_6'. 2001-07-19 05:44:27 +00:00
ChangeLog * eval.c (rb_call0): wrong condition for $SAFE restoration. 2005-09-01 09:39:00 +00:00
GPL This commit was manufactured by cvs2svn to create branch 'ruby_1_6'. 2001-07-11 19:25:53 +00:00
LEGAL The author of getoptlong.rb has agreed on changing the license from 2002-01-04 09:03:11 +00:00
LGPL This commit was manufactured by cvs2svn to create branch 'ruby_1_6'. 2001-07-11 19:25:53 +00:00
MANIFEST * io.c (next_argv): inherit binmode from $defout. 2003-01-12 09:25:22 +00:00
Makefile.in * mdoc2man.rb: New file. A mdoc to man converter ported from 2003-02-20 14:15:04 +00:00
README * eval.c (rb_thread_restore_context): save current value of 2001-09-08 14:06:14 +00:00
README.EXT * eval.c (rb_eval): local_vars[-1] should protect body, not a 2002-10-23 08:19:24 +00:00
README.EXT.ja * README.EXT: Appendix B is duplicated. 2001-11-29 15:30:54 +00:00
README.ja * eval.c (rb_thread_restore_context): save current value of 2001-09-08 14:06:14 +00:00
ToDo 001225 2000-12-25 06:29:27 +00:00
array.c * array.c, class.c, eval.c, file.c, gc.c, node.h, numeric.c, 2002-10-26 15:57:26 +00:00
bignum.c * bignum.c (bigdivrem): bignum zero's len should not be 0. 2002-10-07 07:44:18 +00:00
class.c * class.c (rb_include_module): argument should be T_MODULE, not 2002-12-19 09:32:45 +00:00
compar.c * eval.c (backtrace): should ignore line 0 frame. 2002-12-02 18:19:04 +00:00
config.guess * signal.c (sighandle): should not re-register sighandler if 2001-11-13 08:22:29 +00:00
config.sub * eval.c (blk_orphan): the wrong condition; backported from 1.7 2002-05-14 06:08:44 +00:00
configure.in * intern.h (rb_define_private_method): duplicated. 2003-02-23 11:22:29 +00:00
defines.h * defines.h (FLUSH_REGISTER_WINDOWS): Make the flushw call an 2003-01-04 18:56:30 +00:00
dir.c * dir.c (push_braces): do not push_braces() unless rbrace is found. 2003-05-19 16:20:30 +00:00
dln.c * dln.c (dln_find_1): break if path list end, even for too long 2003-03-26 11:27:00 +00:00
dln.h * dln.h, ruby.h, util.h: enable prototypes in C++. 2001-12-21 07:20:23 +00:00
dmyext.c Initial revision 1998-01-16 12:13:05 +00:00
enum.c * enum.c (enum_find): catch a value before recycle. 2002-03-18 02:00:05 +00:00
env.h 000831 2000-08-31 08:08:39 +00:00
error.c * error.c (get_syserr): typo fix. 2003-02-04 07:13:16 +00:00
eval.c * eval.c (rb_call0): wrong condition for $SAFE restoration. 2005-09-20 16:49:26 +00:00
file.c * file.c (rb_find_file_ext): sync with Ruby 1.8. ([ruby-talk:56407]) 2003-01-09 08:32:26 +00:00
gc.c * gc.c (rb_gc_mark_locations): remove margin. [ruby-dev:20462] 2003-06-28 03:28:53 +00:00
hash.c * dln.c (init_funcname): get rid of gcc-3 -O3 warning. 2002-12-31 17:23:30 +00:00
inits.c 2000-05-01 2000-05-01 09:42:38 +00:00
install-sh 1.4.0 1999-08-13 05:45:20 +00:00
instruby.rb * instruby.rb: do not install shared libraries as man pages. 2003-07-09 07:13:21 +00:00
intern.h * intern.h (rb_define_private_method): duplicated. 2003-02-23 11:22:29 +00:00
io.c * eval.c (method_arity): should handle NODE_BMETHOD and 2004-10-24 23:37:23 +00:00
keywords * lex.c (rb_reserved_word): lex_state after tRESCUE should be 2001-06-29 08:32:54 +00:00
lex.c * intern.h: add prototypes. 2001-12-17 08:13:17 +00:00
main.c matz 2000-10-02 07:48:42 +00:00
marshal.c * marshal.c (r_object0): singleton class instance can't be loaded. (ruby-bugs-ja:PR#366) 2002-12-12 07:35:27 +00:00
math.c * math.c (math_log): nan takes a dummy argument on Cygwin 1.5.0. backport from 2003-08-03 07:00:21 +00:00
mdoc2man.rb This commit was manufactured by cvs2svn to create branch 'ruby_1_6'. 2003-01-20 12:10:40 +00:00
mkconfig.rb * moved a blank line. 2002-10-27 02:16:55 +00:00
node.h * array.c, class.c, eval.c, file.c, gc.c, node.h, numeric.c, 2002-10-26 15:57:26 +00:00
numeric.c * numeric.c (num_cmp): define Numeric#<=>, remove Numeric#==. 2002-12-09 06:12:32 +00:00
object.c * array.c, class.c, eval.c, file.c, gc.c, node.h, numeric.c, 2002-10-26 15:57:26 +00:00
pack.c * file.c (rb_find_file): load must be done from an abolute path if 2002-05-01 09:38:01 +00:00
parse.y * parse.y (void_expr0): node might become NULL after calling 2003-04-19 18:19:34 +00:00
prec.c * io.c (argf_getline): should not increment lineno at EOF. 2003-02-04 06:52:31 +00:00
process.c * dln.c (init_funcname): get rid of gcc-3 -O3 warning. 2002-12-31 17:23:30 +00:00
random.c * random.c (rand_init): add check for initstate(3). 2002-04-11 11:00:02 +00:00
range.c * array.c, class.c, eval.c, file.c, gc.c, node.h, numeric.c, 2002-10-26 15:57:26 +00:00
re.c * io.c (argf_getline): should not increment lineno at EOF. 2003-02-04 06:52:31 +00:00
re.h 2000-05-30 2000-05-30 04:24:17 +00:00
regex.c * regex.c (mbctab_sjis): 0x80 is not shift jis first byte. 2003-07-09 14:52:20 +00:00
regex.h forgot to commit everything bug ChangeLog 2002-01-04 14:20:35 +00:00
ruby.1 mdoc'ify. 2002-12-30 19:56:06 +00:00
ruby.c * ruby.c (proc_options): script argument is in effect only when -e is not given. 2003-02-13 03:02:19 +00:00
ruby.h * file.c (rb_find_file): load must be done from an abolute path if 2002-05-01 09:38:01 +00:00
rubyio.h * configure.in (RUBY_CHECK_IO_NEED): check whether fseek() and 2003-01-09 08:05:24 +00:00
rubysig.h * eval.c (rb_f_missing): NoMethod error messages for true, false, 2002-02-27 04:50:30 +00:00
rubytest.rb matz - nakada win32 patch 2000-08-03 09:50:41 +00:00
signal.c * eval.c (cvar_cbase): utility function to find innermost non 2002-03-08 06:59:55 +00:00
sprintf.c * sprintf.c (rb_f_sprintf): Fix a bug caused by an uninitialized 2003-01-16 18:51:21 +00:00
st.c * st.c (st_init_table_with_size): num_bins should be prime numbers 2002-02-28 06:52:49 +00:00
st.h 20000105 2000-01-05 04:41:21 +00:00
string.c * string.c (rb_str_dup): set FL_EXIVAR when copied generic ivar. 2003-02-25 15:05:03 +00:00
struct.c * struct.c (make_struct): needs meta class. 2003-01-05 17:40:29 +00:00
time.c * io.c (argf_getline): should not increment lineno at EOF. 2003-02-04 06:52:31 +00:00
util.c * eval.c (backtrace): should ignore line 0 frame. 2002-12-02 18:19:04 +00:00
util.h * eval.c (backtrace): should ignore line 0 frame. 2002-12-02 18:19:04 +00:00
variable.c * dir.c (dir_set_pos): Dir#pos= should return the new position. 2002-12-16 07:36:14 +00:00
version.c * eval.c (block_pass): should not pass tainted block, if $SAFE > 0. 2002-01-16 09:22:45 +00:00
version.h * eval.c (rb_call0): wrong condition for $SAFE restoration. 2005-09-20 16:49:26 +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: