The Ruby Programming Language [mirror]
Go to file
ser bef1521876 This is the log for the *previous* commit, but CVS is bloody stupid.
* Added XPath expansion and abbreviation to Parsers::XPathParser
* Improved the look of Element.inspect
* Added xpath() to Element and Attribute, allowing the generation of a unique
  xpath for nodes of these types.  This method for the other nodes still need to be
  done
* Made REXML::XPathParser#match public
First pass at validation support.  Minimal RelaxNG support.
* The tree parser is now an independant parser, like the rest.
* The first basic RelaxNG support is in.  It supports elements, attributes,
  choice, sequence, oneOrMany, zeroOrMany, and optional.
Improved support for converting XPaths to strings.
* XPath wasn't parsing ")" correctly.
Validation improvements:
* Fixed text
* Fixed attributes in choices
* Fixed text in choices.  This change improves handling of all events that occur
  without an end step (which is most of them).
* Fixed a bunch of cases
* Added support for <group>
* Added support for <value>
Workin' in the coal mine, goin' down, down, down...
* Entirely rewrote the validation code; the finite state machine, while cool,
  didn't survive the encounter with Interleave.  It was getting sort of hacky,
  too.  The new mechanism is less elegant, but is basically still a FSM, and is
  more flexible without having to add hacks to extend it.  Large chunks of the
  FSM may be reusable in other validation mechanisms.
* Added interleave support
* Added suppert for mixed
* Added Kou's patch to normalize attribute values passed through the SAX2 and
  Stream parsers.
* Applied Kou's preceding-sibling patch, which fixes the order of the axe results


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-10 02:09:37 +00:00
bcc32 * */Makefile.sub (distclean-local): should remove $(RBCONFIG). 2004-04-22 01:08:23 +00:00
bin Split out ri display code and make pluggable 2004-01-06 05:59:31 +00:00
cygwin * cygwin/GNUmakefile.in (clean-local, distclean-local): remove 2004-03-28 07:25:42 +00:00
djgpp * configure.in: better DJGPP support. add GNUmakefile. 2003-01-01 09:26:45 +00:00
doc * lib/generator.rb: A new library which converts an internal 2003-10-14 20:14:20 +00:00
ext * ext/openssl/ossl_ssl.c (ossl_ssl_read): take optional second argument 2004-05-26 18:11:29 +00:00
lib This is the log for the *previous* commit, but CVS is bloody stupid. 2004-06-10 02:09:37 +00:00
misc * parse.y (string_content): turn off NODE_NEWLINE flag to avoid 2004-05-07 08:44:24 +00:00
missing * missing/os2.c, missing/x68.c: typo fix. pointed out by greentea. 2004-02-21 02:12:21 +00:00
sample * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a block 2004-05-25 02:54:22 +00:00
test * lib/uri/generic.rb (URI::Generic::merge, 2004-06-09 07:15:56 +00:00
vms config.h_in has been renamed to config.h 2003-12-26 01:39:25 +00:00
win32 * win32/win32.c: remove unused functions and variables. 2004-06-09 03:47:08 +00:00
wince * */Makefile.sub (distclean-local): should remove $(RBCONFIG). 2004-04-22 01:08:23 +00:00
x68
.cvsignore * error.c (Init_Exception): remove Exception#to_str. [Ruby2] 2004-04-05 15:55:09 +00:00
.document Finish documenting internal stuff. See Changelog for other details 2004-01-02 06:01:12 +00:00
COPYING
COPYING.ja
ChangeLog * lib/uri/generic.rb (URI::Generic::merge, 2004-06-09 07:15:56 +00:00
GPL
LEGAL * oniggnu.h: imported from Oniguruma library. 2004-03-05 15:40:36 +00:00
LGPL
MANIFEST This is the log for the *previous* commit, but CVS is bloody stupid. 2004-06-10 02:09:37 +00:00
Makefile.in * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG 2004-04-07 01:43:27 +00:00
README
README.EXT * README.EXT, README.EXT.ja: fixed wrong function signature. 2004-04-26 14:56:58 +00:00
README.EXT.ja * README.EXT, README.EXT.ja: fixed wrong function signature. 2004-04-26 14:56:58 +00:00
README.ja
ToDo * error.c (Init_Exception): remove Exception#to_str. [Ruby2] 2004-04-05 15:55:09 +00:00
array.c * range.c (range_each_func): terminates loop if generating value 2004-05-14 16:39:15 +00:00
ascii.c Initial revision 2004-03-05 15:31:51 +00:00
bignum.c * io.c (rb_io_gets_m): set lastline ($_) even when read line is 2004-06-04 09:56:25 +00:00
class.c fix rdoc 2004-05-12 02:51:54 +00:00
common.mk * common.mk: LIBURUBY_A is needed for extconf.rb even when 2004-04-27 05:43:36 +00:00
compar.c Fix dependency issue 2003-12-19 00:01:19 +00:00
config.guess * config.guess, config.sub: Update to a more recent version as of 2004-06-09 06:10:59 +00:00
config.sub * config.guess, config.sub: Update to a more recent version as of 2004-06-09 06:10:59 +00:00
configure.in * configure.in: Add support for DragonFly BSD. 2004-06-09 06:41:08 +00:00
defines.h * defines.h: include <net/socket.h> to get fd_set definition in BeOS. 2004-04-14 02:03:41 +00:00
dir.c * dir.c (rb_push_glob): simplified code (not change behavior) 2004-05-06 05:42:48 +00:00
dln.c * dln.c, io.c, pack.c, lib/benchmark.rb, lib/cgi.rb, lib/csv.rb, 2004-04-18 23:19:47 +00:00
dln.h Updated Copyrights of Matz to 2003. 2003-01-16 07:34:03 +00:00
dmyext.c
enum.c * array.c, enum.c, eval.c, file.c, io.c, numeric.c, object.c, prec.c, 2004-04-14 04:06:52 +00:00
env.h * env.h (ruby_frame, ruby_scope, ruby_in_eval, ruby_class, 2004-01-11 14:54:44 +00:00
error.c * error.c (Init_Exception): remove Exception#to_str. [Ruby2] 2004-04-05 15:55:09 +00:00
euc_jp.c This commit was generated by cvs2svn to compensate for changes in r5960, 2004-03-16 15:20:15 +00:00
eval.c * eval.c (rb_eval): bad influence on frame node. 2004-05-28 02:20:34 +00:00
file.c * io.c (rb_io_gets_m): set lastline ($_) even when read line is 2004-06-04 09:56:25 +00:00
gc.c * parse.y (string_content): turn off NODE_NEWLINE flag to avoid 2004-05-07 08:44:24 +00:00
hash.c * parse.y (string_content): turn off NODE_NEWLINE flag to avoid 2004-05-07 08:44:24 +00:00
inits.c Add boot_classes to rdoc parsing, fix a couple of bugs 2003-12-19 03:58:57 +00:00
install-sh
instruby.rb * instruby.rb, rubytest.rb: do not depend on srcdir. 2004-03-18 10:49:20 +00:00
intern.h * eval.c (eval): warning during eval should not cause deadlock. 2004-05-10 08:23:13 +00:00
io.c * io.c (rb_io_gets_m): set lastline ($_) even when read line is 2004-06-04 09:56:25 +00:00
keywords
lex.c
main.c * gc.c (Init_stack): stack region is far smaller than usual if 2003-11-22 04:00:03 +00:00
marshal.c * parse.y (newline_node): do not use NODE_NEWLINE node anymore, 2004-01-21 16:47:23 +00:00
math.c Add RDoc comments to math.c 2003-12-28 15:44:07 +00:00
mdoc2man.rb * mdoc2man.rb: Properly put nested braces, parentheses and angles. 2003-01-20 12:10:40 +00:00
missing.h * configure.in (ac_cv_func_setitimer): moved from defines.h 2003-12-22 08:23:55 +00:00
mkconfig.rb * Makefile.in, */Makefile.sub, common.mk: extract common portions. 2004-03-21 23:21:31 +00:00
node.h * node.h (NEW_DSTR): adjust list length. 2004-05-18 05:00:58 +00:00
numeric.c * io.c (rb_io_gets_m): set lastline ($_) even when read line is 2004-06-04 09:56:25 +00:00
object.c * range.c (range_each_func): terminates loop if generating value 2004-05-14 16:39:15 +00:00
oniggnu.h Initial revision 2004-03-05 15:31:51 +00:00
oniguruma.h * oniguruma.h, regparse.c: imported Oni Guruma 2.2.8. 2004-04-27 16:37:56 +00:00
pack.c * pack.c (pack_pack): always add with null for 'Z'. 2004-05-13 02:04:20 +00:00
parse.y * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a block 2004-05-25 02:54:22 +00:00
prec.c * array.c, enum.c, eval.c, file.c, io.c, numeric.c, object.c, prec.c, 2004-04-14 04:06:52 +00:00
process.c * process.c: Recover wrongly removed spaces at end of the lines. 2004-04-21 02:50:15 +00:00
random.c * eval.c (rb_yield_0): should not re-submit TAG_BREAK if this 2004-03-15 02:27:29 +00:00
range.c * range.c (range_each_func): terminates loop if generating value 2004-05-14 16:39:15 +00:00
re.c re.c: applied stack error handling patch. [ruby-dev:22431] 2004-04-24 05:34:54 +00:00
re.h * configure.in, bcc32/Makefile.sub, win32/Makefile.sub: define 2003-03-04 14:12:19 +00:00
regcomp.c This commit was generated by cvs2svn to compensate for changes in r6231, 2004-04-27 16:20:02 +00:00
regenc.c This commit was generated by cvs2svn to compensate for changes in r5960, 2004-03-16 15:20:15 +00:00
regenc.h This commit was generated by cvs2svn to compensate for changes in r5960, 2004-03-16 15:20:15 +00:00
regerror.c This commit was generated by cvs2svn to compensate for changes in r5960, 2004-03-16 15:20:15 +00:00
regex.h * oniggnu.h: imported from Oniguruma library. 2004-03-05 15:40:36 +00:00
regexec.c This commit was generated by cvs2svn to compensate for changes in r6231, 2004-04-27 16:20:02 +00:00
reggnu.c Initial revision 2004-03-05 15:31:51 +00:00
regint.h This commit was generated by cvs2svn to compensate for changes in r6231, 2004-04-27 16:20:02 +00:00
regparse.c * oniguruma.h, regparse.c: imported Oni Guruma 2.2.8. 2004-04-27 16:37:56 +00:00
regparse.h Initial revision 2004-03-05 15:31:51 +00:00
ruby.1 * ruby.1: add -width option to .Bl for old groff. 2004-03-21 12:08:02 +00:00
ruby.c * ruby.c (require_libraries): restore source file/line after 2004-04-11 10:10:18 +00:00
ruby.h * pack.c (pack_pack): use NUM2INT() instead of num2i32(). 2004-04-07 06:30:15 +00:00
rubyio.h * file.c (rb_get_path): get path string via "to_path" method if 2004-04-07 02:51:05 +00:00
rubysig.h * rubysig.h: <errno.h> is needed to use errno which may be a macro. 2004-01-09 02:52:19 +00:00
rubytest.rb * rubytest.rb: do nothing while cross-compiling, return status in 2004-04-15 10:57:16 +00:00
runruby.rb * ext/extmk.rb (extmake): skip uncompiled extensions. 2004-04-08 10:45:21 +00:00
signal.c * eval.c (rb_yield_0): should not re-submit TAG_BREAK if this 2004-03-15 02:27:29 +00:00
sjis.c Initial revision 2004-03-05 15:31:51 +00:00
sprintf.c * exception message clean-up by Ian Macdonald <ian@caliban.org>. 2004-03-29 07:54:38 +00:00
st.c * string.c (rb_str_hash): Update the HASH_PERL alternative hash 2003-11-01 16:16:31 +00:00
st.h * string.c (rb_str_chomp_bang): defer rb_str_modify() to actual 2003-07-27 17:20:29 +00:00
string.c * string.c (str_new4): should share shared instance if it already 2004-06-05 02:33:01 +00:00
struct.c * file.c (rb_get_path): get path string via "to_path" method if 2004-04-07 02:51:05 +00:00
time.c * range.c (range_each_func): terminates loop if generating value 2004-05-14 16:39:15 +00:00
utf8.c This commit was generated by cvs2svn to compensate for changes in r5960, 2004-03-16 15:20:15 +00:00
util.c * util.c (ruby_strtod): strtod("0", &end); => end should point '\0'. 2004-05-14 03:17:50 +00:00
util.h * util.h: remove unnecessary parentheses. [ruby-dev:20879] 2003-08-04 01:27:25 +00:00
variable.c * range.c (range_each_func): terminates loop if generating value 2004-05-14 16:39:15 +00:00
version.c * version.c (ruby_show_copyright): obtain copyright year from 2004-03-25 12:01:41 +00:00
version.h 2004-06-09 2004-06-09 02:21:45 +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: