@@ -7,58 +7,61 @@ h1. Preface: Introduction
77
88h2. Characteristics of Ruby
99
10- Some of the readers may have already been familiar with Ruby, some may be not.
11- (I wish the latter for this chapter to be most useful) First let's go though a
10+ Some of the readers may have already been familiar with Ruby,
11+ but (I hope) there are also many readers who have not. First let's go though a
1212rough summary of the characteristics of Ruby for such people.
1313
1414
15- Hereafter capital "Ruby" refers to Ruby as a language scheme , and lowercase
16- "@ruby@" refers to the implementation of @ruby@ command.
15+ Hereafter capital "Ruby" refers to Ruby as a language specification , and lowercase
16+ "@ruby@" refers to @ruby@ command as an implementation.
1717
18- h4. Development pattern
18+ h4. Development style
1919
20- Ruby is a personally created language by Yukihiro Matsumoto. That means Ruby
21- doesn't have a standard scheme that C or Java have. The specification is merely
22- shown as an implementation as @ruby@, and its varying continuously. Whichever
23- you mention good or bad, it's unbind.
20+ Ruby is a language that is being developped by the hand of Yukihiro Matsumoto as
21+ an individual. Unlike C or Java or Scheme, it does not have any standard.
22+ The specification is merely
23+ shown as an implementation as @ruby@, and its varying continuously.
24+ For good or bad, it's free.
2425
2526
26- Furthermore @ruby@ itself is a free software - source code being open and
27- being in public free of charge - this is what I must add in the introduction.
28- That's why it allows the approach of this book into publication.
27+ Furthermore @ruby@ itself is a free software.
28+ It's probably necessary to mention at least the two points here:
29+ The source code is open in public and distributed free of charge.
30+ Thanks to such condition, an attempt like this book can be approved.
2931
3032
31- Giving the @README@ and @LEGAL@ included in the distribution package the
32- complete reading of the license, let's list up what you can do for the time
33- being:
33+ If you'd like to know the exact lisence, you can read @README@ and @LEGAL@.
34+ For the time being, I'd like you to remember that you can do at least the
35+ following things:
3436
3537
36- You can redistribute source code of @ruby@
37- You can modify source code of @ruby@
38- You can redistribute a copy of source code with your modification
38+ * You can redistribute source code of @ruby@
39+ * You can modify source code of @ruby@
40+ * You can redistribute a copy of source code with your modification
3941
4042
4143There is no need for special permission and payment in all these cases.
4244
4345
44- By the way, the original @ruby@ is the version referred to in this book unless
45- otherwise stated, because our main purpose is to read it. However, I modified
46- the code without notice at a certain extent such as to remove or add white
47- spaces, new lines, and comments.
46+ By the way, the purpose of this book is to read the original @ruby@,
47+ thus the target source is the one not modified unless it is particulary
48+ specified. However, white spaces, new lines and comments were added or removed
49+ without asking.
50+
4851
4952h4. It's conservative
5053
5154Ruby is a very conservative language. It is equipped with only carefully chosen
52- features that have been tested and washed out in a variety of languages .
55+ features that have been tested and washed out in a variety of languages.
5356Therefore it doesn't have plenty of fresh and experimental features very much.
5457So it has a tendency to appeal to programmers who put importance on practical
5558functionalities. The dyed-in-the-wool hackers like Scheme and Haskell lovers
56- don't seem to find appeal in ruby in a short glance.
59+ don't seem to find appeal in ruby, at least in a short glance.
5760
5861
5962The library is conservative in the same way. Clear and unabbreviated names are
6063given for new functions, while names that appears in C and Perl libraries have
61- been took over from them. For example, @printf@, @getpwent@, @sub@, and @tr@.
64+ been taken from them. For example, @printf@, @getpwent@, @sub@, and @tr@.
6265
6366
6467It is also conservative in implementation. Assembler is not its option for
@@ -67,18 +70,18 @@ conflicts with speed.
6770
6871h4. It is an object-oriented language
6972
70- Ruby is an object-oriented language. It is not possible to forget about it
71- absolutely, when you talk about the features of Ruby.
73+ Ruby is an object-oriented language. It is absolutely impossible to exclude it
74+ from the features of Ruby.
7275
7376
7477I will not give a page to this book about what an object-oriented language is.
7578To tell about an object-oriented feature about Ruby, the expression of the code
76- that just going to be explained below is the exact sample.
79+ that just going to be explained is the exact sample.
7780
7881h4. It is a script language
7982
80- Ruby is a script language. It is also not possible to forget about it
81- absolutely, when you talk about the features of Ruby. To gain agreement of
83+ Ruby is a script language. It seems also absolutely impossible to exclude this
84+ from the features of Ruby. To gain agreement of
8285everyone, an introduction of Ruby must include "object-oriented" and "script
8386language".
8487
@@ -92,13 +95,14 @@ file from the command line, etc.
9295
9396
9497However, I dare to use another definition, because I don't find much interest
95- in "what" a script language. To call it a script language, it at least has to
96- avoid gaining disagreement of calling it so. That's the definition I suggest.
98+ in "what" a script language.
99+ I have the only one measure to decide to call it a script language,
100+ that is, whether no one would complain about calling it a script language.
97101To fulfill this definition, I would define the meaning of "script language" as
98102follows.
99103
100104
101- Whether the author of the language calls it "script language" or not.
105+ A language that its author calls it a "script language".
102106
103107
104108I'm sure this definition will have no failure. And Ruby fulfills this point.
0 commit comments