1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
The Ruby Programming Language [mirror]
Find a file
knu f2dfae7ea0 * lib/getopts.rb: Rewrite to fix some bugs and complete features.
- Accept options with the colon in the first argument;
    getopts("a:bcd:") is equivalent to getopts("bc", "a:", "d:").
  - Do not discard the argument that caused an error.
  - Do not discard '-', which commonly stands for stdin.
  - Allow specifying a long option with a value using '='.
    (command --long-option=value)
  - Stop reading options when it meets a non-option argument.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-04 21:15:47 +00:00
cygwin * configure.in: remove unnecessary AC_CANONICAL_BUILD 2001-05-28 16:07:34 +00:00
djgpp INLINE 2001-01-11 01:55:18 +00:00
doc aamine 2002-02-19 12:33:52 +00:00
ext * ext/extmk.rb.in (dir_config): Sync with mkmf.rb: Fix a bug where 2002-03-04 04:24:26 +00:00
lib * lib/getopts.rb: Rewrite to fix some bugs and complete features. 2002-03-04 21:15:47 +00:00
misc * misc/ruby-mode.el (ruby-block-hanging-re): rescue block was too 2002-02-18 05:17:53 +00:00
missing * time.c: new method gmtoff', gmt_offset' and `utc_offset'. 2001-12-17 06:45:37 +00:00
sample commit miss. 2002-02-25 10:46:48 +00:00
win32 * win32/config.status.in: set LIBRUBY_SO. 2002-02-22 10:59:46 +00:00
x68 Initial revision 1998-01-16 12:13:05 +00:00
.cvsignore Let cvs ignore libruby.so.*. 2001-07-12 12:02:08 +00:00
array.c * array.c (rb_ary_fill): shouldn't yield unless block given. 2002-01-28 10:18:14 +00:00
bignum.c * bignum.c (rb_big_2comp): void function cannot return any value. 2002-02-26 12:36:26 +00:00
ChangeLog * lib/getopts.rb: Rewrite to fix some bugs and complete features. 2002-03-04 21:15:47 +00:00
class.c * file.c (path_check_1): do not warn on world writable *parent* 2002-02-19 07:47:07 +00:00
compar.c * error.c (exc_exception): clone the receiver exception instead of 2001-07-02 08:46:28 +00:00
config.guess * marshal.c (r_object): better allocation type check for 2001-10-03 07:19:19 +00:00
config.sub * eval.c (POP_VARS): should not set DVAR_DONT_RECYCLE if _old 2001-10-31 06:53:22 +00:00
configure.in * parse.y (expr_value, arg_value, primary_value): value_expr() 2002-02-18 09:52:48 +00:00
COPYING * eval.c (method_inspect): should not dump core for unbound 2002-02-25 09:16:25 +00:00
COPYING.ja Rename *.jp to *.ja, since jp is a region code and ja is a language 2001-07-19 05:44:26 +00:00
defines.h * parse.y (expr_value, arg_value, primary_value): value_expr() 2002-02-18 09:52:48 +00:00
dir.c * parse.y (expr_value, arg_value, primary_value): value_expr() 2002-02-18 09:52:48 +00:00
dln.c * dln.c (dln_load): fix typo. 2002-02-28 22:05:01 +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 * array.c (rb_ary_modify): should copy the internal buffer if the 2001-12-10 07:18:16 +00:00
env.h * dir.c (dir_s_glob): supprt backslash escape of metacharacters 2001-02-14 05:52:06 +00:00
error.c * io.c (rb_io_s_new): block check moved from initialize to this 2002-01-18 14:24:01 +00:00
eval.c * eval.c (rb_mod_include): load modules in argument order. 2002-02-28 06:53:33 +00:00
file.c * bignum.c (get2comp): need to specify to carry or not. 2002-02-22 10:28:47 +00:00
gc.c * bignum.c (rb_big_rshift): should properly convert the nagative 2002-02-15 04:43:58 +00:00
GPL * It is confusing to put the GPL license terms in the file COPYING; 2001-07-11 19:25:52 +00:00
hash.c * eval.c (method_inspect): should not dump core for unbound 2002-02-25 09:16:25 +00:00
inits.c * dir.c (dir_s_glob): supprt backslash escape of metacharacters 2001-02-14 05:52:06 +00:00
install-sh 1.4.0 1999-08-13 05:45:20 +00:00
instruby.rb Install help-message's too. 2001-04-30 17:55:56 +00:00
intern.h * intern.h: prototypes; rb_io_addstr(), rb_io_printf(), 2002-02-20 06:35:37 +00:00
io.c * io.c (READ_DATA_PENDING): uClibc support. 2002-02-27 04:30:20 +00:00
keywords * range.c (range_step): 'iter' here should be an array. 2001-08-20 04:29:58 +00:00
LEGAL The author of getoptlong.rb has agreed on changing the license from 2002-01-04 09:03:11 +00:00
lex.c * intern.h: add prototypes. 2001-12-17 07:52:35 +00:00
LGPL * It is confusing to put the GPL license terms in the file COPYING; 2001-07-11 19:25:52 +00:00
main.c * dir.c (dir_s_glob): supprt backslash escape of metacharacters 2001-02-14 05:52:06 +00:00
Makefile.in * Makefile.in (clean): add $(MAINOBJ) 2002-01-11 15:36:11 +00:00
MANIFEST added uri library (uri-0.9.4) 2002-01-10 08:06:57 +00:00
marshal.c * eval.c (rb_mod_include): load modules in argument order. 2002-02-28 06:53:33 +00:00
math.c * io.c (argf_seek_m): wrong calling sequence of rb_io_seek(). 2001-03-13 05:45:13 +00:00
mkconfig.rb * mkconfig.rb (Config::expand): expand ${} too. 2002-02-17 14:46:44 +00:00
node.h * parse.y (stmt): local variable declaration order was changed 2002-02-13 09:01:11 +00:00
numeric.c * re.c (match_select): should propagate taintness. 2002-01-11 09:18:54 +00:00
object.c * eval.c (method_inspect): should not dump core for unbound 2002-02-25 09:16:25 +00:00
pack.c * pack.c (pack_pack): wrong # comment treatment. 2002-02-21 07:15:06 +00:00
parse.y * hash.c (rb_any_cmp): should handle Qundef in keys. 2002-02-20 04:31:50 +00:00
prec.c * parse.y (yylex): ternary ? can be followed by newline. 2001-08-29 06:28:51 +00:00
process.c * eval.c (rb_eval): call trace_func for if/while conditions. 2002-02-26 06:48:59 +00:00
random.c * io.c (READ_DATA_PENDING): uClibc support. 2002-02-27 04:30:20 +00:00
range.c * class.c (rb_include_module): detect cyclic module inclusion. 2002-01-25 08:22:11 +00:00
re.c * parse.y (stmt): local variable declaration order was changed 2002-02-13 09:01:11 +00:00
re.h * dir.c (dir_s_glob): supprt backslash escape of metacharacters 2001-02-14 05:52:06 +00:00
README * eval.c (rb_thread_restore_context): save current value of 2001-09-08 14:17:53 +00:00
README.EXT * README.EXT: Appendix B is duplicated. 2001-11-29 15:30:54 +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:17:53 +00:00
regex.c * eval.c (rb_eval_string_wrap): should hide the toplevel local 2002-02-19 04:49:27 +00:00
regex.h * process.c (rb_f_system): abandon vfork. 2002-01-04 14:15:33 +00:00
ruby.1 * eval.c (rb_thread_restore_context): save current value of 2001-09-08 14:17:53 +00:00
ruby.c * ruby.c (load_file): avoid SEGV on '#' only input. 2002-02-10 07:55:40 +00:00
ruby.h * parse.y (expr_value, arg_value, primary_value): value_expr() 2002-02-18 09:52:48 +00:00
rubyio.h * io.c (io_write): flag when buffered write is done. 2002-02-07 04:18:08 +00:00
rubysig.h * eval.c (block_pass): should not downgrade safe level. 2001-05-02 04:22:21 +00:00
rubytest.rb forgot some checkins. 2001-05-06 15:06:00 +00:00
signal.c * signal.c (ruby_signal): must define sighandler_t unless 2002-01-21 13:59:41 +00:00
sprintf.c * intern.h: prototypes for new functions; rb_cstr_to_inum(), 2002-02-01 10:23:22 +00:00
st.c * eval.c (rb_mod_include): load modules in argument order. 2002-02-28 06:53:33 +00:00
st.h 20000105 2000-01-05 04:41:21 +00:00
string.c * intern.h: prototypes for new functions; rb_cstr_to_inum(), 2002-02-01 10:23:22 +00:00
struct.c * struct.c (Init_Struct): should undefine "allocate" for Struct 2002-02-14 07:49:27 +00:00
time.c * intern.h: prototypes for new functions; rb_cstr_to_inum(), 2002-02-01 10:23:22 +00:00
ToDo * array.c (Init_Array): remove Array#filter. 2002-01-23 07:30:43 +00:00
util.c * array.c (rb_ary_modify): should copy the internal buffer if the 2001-12-10 07:18:16 +00:00
util.h * dln.h, ruby.h, util.h: enable prototypes in C++. 2001-12-21 07:20:23 +00:00
variable.c * eval.c (rb_eval): replace rb_cvar_declare() by rb_cvar_set(). 2002-02-15 06:14:26 +00:00
version.c * re.c (match_select): should propagate taintness. 2002-01-11 09:18:54 +00:00
version.h 2002-03-01 2002-03-01 02:38:46 +00:00

* 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: