libxml-ruby 2.0.0-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (163) hide show
  1. data/HISTORY +516 -0
  2. data/LICENSE +23 -0
  3. data/MANIFEST +165 -0
  4. data/README.rdoc +161 -0
  5. data/Rakefile +82 -0
  6. data/ext/libxml/extconf.rb +122 -0
  7. data/ext/libxml/libxml.c +93 -0
  8. data/ext/libxml/ruby_libxml.h +101 -0
  9. data/ext/libxml/ruby_xml.c +893 -0
  10. data/ext/libxml/ruby_xml.h +10 -0
  11. data/ext/libxml/ruby_xml_attr.c +352 -0
  12. data/ext/libxml/ruby_xml_attr.h +14 -0
  13. data/ext/libxml/ruby_xml_attr_decl.c +171 -0
  14. data/ext/libxml/ruby_xml_attr_decl.h +13 -0
  15. data/ext/libxml/ruby_xml_attributes.c +277 -0
  16. data/ext/libxml/ruby_xml_attributes.h +17 -0
  17. data/ext/libxml/ruby_xml_cbg.c +85 -0
  18. data/ext/libxml/ruby_xml_document.c +958 -0
  19. data/ext/libxml/ruby_xml_document.h +17 -0
  20. data/ext/libxml/ruby_xml_dtd.c +257 -0
  21. data/ext/libxml/ruby_xml_dtd.h +9 -0
  22. data/ext/libxml/ruby_xml_encoding.c +221 -0
  23. data/ext/libxml/ruby_xml_encoding.h +16 -0
  24. data/ext/libxml/ruby_xml_error.c +1004 -0
  25. data/ext/libxml/ruby_xml_error.h +14 -0
  26. data/ext/libxml/ruby_xml_html_parser.c +92 -0
  27. data/ext/libxml/ruby_xml_html_parser.h +12 -0
  28. data/ext/libxml/ruby_xml_html_parser_context.c +308 -0
  29. data/ext/libxml/ruby_xml_html_parser_context.h +12 -0
  30. data/ext/libxml/ruby_xml_html_parser_options.c +40 -0
  31. data/ext/libxml/ruby_xml_html_parser_options.h +12 -0
  32. data/ext/libxml/ruby_xml_input_cbg.c +191 -0
  33. data/ext/libxml/ruby_xml_input_cbg.h +20 -0
  34. data/ext/libxml/ruby_xml_io.c +30 -0
  35. data/ext/libxml/ruby_xml_io.h +9 -0
  36. data/ext/libxml/ruby_xml_namespace.c +170 -0
  37. data/ext/libxml/ruby_xml_namespace.h +12 -0
  38. data/ext/libxml/ruby_xml_namespaces.c +295 -0
  39. data/ext/libxml/ruby_xml_namespaces.h +11 -0
  40. data/ext/libxml/ruby_xml_node.c +1386 -0
  41. data/ext/libxml/ruby_xml_node.h +13 -0
  42. data/ext/libxml/ruby_xml_parser.c +94 -0
  43. data/ext/libxml/ruby_xml_parser.h +14 -0
  44. data/ext/libxml/ruby_xml_parser_context.c +982 -0
  45. data/ext/libxml/ruby_xml_parser_context.h +12 -0
  46. data/ext/libxml/ruby_xml_parser_options.c +68 -0
  47. data/ext/libxml/ruby_xml_parser_options.h +14 -0
  48. data/ext/libxml/ruby_xml_reader.c +1057 -0
  49. data/ext/libxml/ruby_xml_reader.h +14 -0
  50. data/ext/libxml/ruby_xml_relaxng.c +111 -0
  51. data/ext/libxml/ruby_xml_relaxng.h +10 -0
  52. data/ext/libxml/ruby_xml_sax2_handler.c +334 -0
  53. data/ext/libxml/ruby_xml_sax2_handler.h +12 -0
  54. data/ext/libxml/ruby_xml_sax_parser.c +136 -0
  55. data/ext/libxml/ruby_xml_sax_parser.h +12 -0
  56. data/ext/libxml/ruby_xml_schema.c +159 -0
  57. data/ext/libxml/ruby_xml_schema.h +11 -0
  58. data/ext/libxml/ruby_xml_version.h +9 -0
  59. data/ext/libxml/ruby_xml_xinclude.c +18 -0
  60. data/ext/libxml/ruby_xml_xinclude.h +13 -0
  61. data/ext/libxml/ruby_xml_xpath.c +107 -0
  62. data/ext/libxml/ruby_xml_xpath.h +12 -0
  63. data/ext/libxml/ruby_xml_xpath_context.c +390 -0
  64. data/ext/libxml/ruby_xml_xpath_context.h +11 -0
  65. data/ext/libxml/ruby_xml_xpath_expression.c +83 -0
  66. data/ext/libxml/ruby_xml_xpath_expression.h +12 -0
  67. data/ext/libxml/ruby_xml_xpath_object.c +336 -0
  68. data/ext/libxml/ruby_xml_xpath_object.h +19 -0
  69. data/ext/libxml/ruby_xml_xpointer.c +101 -0
  70. data/ext/libxml/ruby_xml_xpointer.h +13 -0
  71. data/ext/mingw/Rakefile +34 -0
  72. data/ext/mingw/build.rake +41 -0
  73. data/ext/vc/libxml_ruby.sln +26 -0
  74. data/lib/1.8/libxml_ruby.so +0 -0
  75. data/lib/1.9/libxml_ruby.so +0 -0
  76. data/lib/libxml.rb +30 -0
  77. data/lib/libxml/attr.rb +113 -0
  78. data/lib/libxml/attr_decl.rb +80 -0
  79. data/lib/libxml/attributes.rb +14 -0
  80. data/lib/libxml/document.rb +192 -0
  81. data/lib/libxml/error.rb +90 -0
  82. data/lib/libxml/hpricot.rb +78 -0
  83. data/lib/libxml/html_parser.rb +96 -0
  84. data/lib/libxml/namespace.rb +62 -0
  85. data/lib/libxml/namespaces.rb +38 -0
  86. data/lib/libxml/node.rb +399 -0
  87. data/lib/libxml/ns.rb +22 -0
  88. data/lib/libxml/parser.rb +367 -0
  89. data/lib/libxml/properties.rb +23 -0
  90. data/lib/libxml/reader.rb +29 -0
  91. data/lib/libxml/sax_callbacks.rb +180 -0
  92. data/lib/libxml/sax_parser.rb +58 -0
  93. data/lib/libxml/tree.rb +29 -0
  94. data/lib/libxml/xpath_object.rb +16 -0
  95. data/lib/xml.rb +16 -0
  96. data/lib/xml/libxml.rb +10 -0
  97. data/libxml-ruby.gemspec +50 -0
  98. data/script/benchmark/depixelate +634 -0
  99. data/script/benchmark/hamlet.xml +9055 -0
  100. data/script/benchmark/parsecount +170 -0
  101. data/script/benchmark/sock_entries.xml +507 -0
  102. data/script/benchmark/throughput +41 -0
  103. data/script/test +6 -0
  104. data/setup.rb +1585 -0
  105. data/test/etc_doc_to_s.rb +21 -0
  106. data/test/ets_doc_file.rb +17 -0
  107. data/test/ets_doc_to_s.rb +23 -0
  108. data/test/ets_gpx.rb +28 -0
  109. data/test/ets_node_gc.rb +23 -0
  110. data/test/ets_test.xml +2 -0
  111. data/test/ets_tsr.rb +11 -0
  112. data/test/model/atom.xml +13 -0
  113. data/test/model/bands.iso-8859-1.xml +5 -0
  114. data/test/model/bands.utf-8.xml +5 -0
  115. data/test/model/bands.xml +5 -0
  116. data/test/model/books.xml +146 -0
  117. data/test/model/merge_bug_data.xml +58 -0
  118. data/test/model/ruby-lang.html +238 -0
  119. data/test/model/rubynet.xml +79 -0
  120. data/test/model/rubynet_project +1 -0
  121. data/test/model/shiporder.rnc +28 -0
  122. data/test/model/shiporder.rng +86 -0
  123. data/test/model/shiporder.xml +23 -0
  124. data/test/model/shiporder.xsd +31 -0
  125. data/test/model/soap.xml +27 -0
  126. data/test/model/xinclude.xml +5 -0
  127. data/test/rb-magic-comment.rb +33 -0
  128. data/test/tc_attr.rb +181 -0
  129. data/test/tc_attr_decl.rb +133 -0
  130. data/test/tc_attributes.rb +135 -0
  131. data/test/tc_deprecated_require.rb +13 -0
  132. data/test/tc_document.rb +119 -0
  133. data/test/tc_document_write.rb +187 -0
  134. data/test/tc_dtd.rb +125 -0
  135. data/test/tc_error.rb +138 -0
  136. data/test/tc_html_parser.rb +140 -0
  137. data/test/tc_namespace.rb +62 -0
  138. data/test/tc_namespaces.rb +177 -0
  139. data/test/tc_node.rb +258 -0
  140. data/test/tc_node_cdata.rb +51 -0
  141. data/test/tc_node_comment.rb +33 -0
  142. data/test/tc_node_copy.rb +42 -0
  143. data/test/tc_node_edit.rb +160 -0
  144. data/test/tc_node_text.rb +71 -0
  145. data/test/tc_node_write.rb +108 -0
  146. data/test/tc_node_xlink.rb +29 -0
  147. data/test/tc_parser.rb +336 -0
  148. data/test/tc_parser_context.rb +189 -0
  149. data/test/tc_properties.rb +39 -0
  150. data/test/tc_reader.rb +298 -0
  151. data/test/tc_relaxng.rb +54 -0
  152. data/test/tc_sax_parser.rb +276 -0
  153. data/test/tc_schema.rb +53 -0
  154. data/test/tc_traversal.rb +222 -0
  155. data/test/tc_xinclude.rb +21 -0
  156. data/test/tc_xml.rb +226 -0
  157. data/test/tc_xpath.rb +195 -0
  158. data/test/tc_xpath_context.rb +80 -0
  159. data/test/tc_xpath_expression.rb +38 -0
  160. data/test/tc_xpointer.rb +74 -0
  161. data/test/test_helper.rb +14 -0
  162. data/test/test_suite.rb +39 -0
  163. metadata +254 -0
@@ -0,0 +1,21 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ 1.times do |count|
6
+
7
+ xml_doc = XML::Document.new()
8
+ xml_doc.encoding = "UTF-8"
9
+ xml_doc.root = XML::Node.new("Request")
10
+
11
+ 1000.times do |index|
12
+ xml_doc.root << node = XML::Node.new("row")
13
+ node["user_id"] = index.to_s
14
+ node << "600445"
15
+ end
16
+
17
+ xml_str = xml_doc.to_s
18
+ print "\r#{count}"
19
+ $stdout.flush
20
+ end
21
+ puts "\n"
@@ -0,0 +1,17 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ # This is related to bug 8337, complaint is on amd64/fbsd
6
+ # unknown if it happens on other amd64/os combos
7
+
8
+ Process.setrlimit(Process::RLIMIT_NOFILE,10005)
9
+
10
+ (1..10000).each{|time|
11
+ XML::Document.file(File.join(File.dirname(__FILE__),'ets_test.xml'))
12
+ if time % 100 == 0
13
+ print "\r#{time}"
14
+ $stdout.flush
15
+ end
16
+ }
17
+ puts "\n"
@@ -0,0 +1,23 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ 100.times do |count|
6
+
7
+ xml_doc = XML::Document.new()
8
+ xml_doc.encoding = "UTF-8"
9
+ xml_doc.root = XML::Node.new("Request")
10
+
11
+ 1000.times do |index|
12
+
13
+ xml_doc.root << node = XML::Node.new("row")
14
+ node["user_id"] = index.to_s
15
+ node << "600445"
16
+
17
+ end
18
+
19
+ xml_str = xml_doc.to_s
20
+ print "\r#{count}"
21
+ $stdout.flush
22
+ end
23
+ puts "\n"
@@ -0,0 +1,28 @@
1
+ # encoding: UTF-8
2
+
3
+ require 'libxml'
4
+
5
+ 100.times do
6
+ doc = XML::Document.new
7
+ doc.encoding = 'UTF-8'
8
+
9
+ root = XML::Node.new 'gpx'
10
+ root['version'] = '1.0'
11
+ root['creator'] = 'OpenStreetMap.org'
12
+ root['xmlns'] = "http://www.topografix.com/GPX/1/0/"
13
+
14
+ doc.root = root
15
+
16
+ track = XML::Node.new 'trk'
17
+ doc.root << track
18
+
19
+ trkseg = XML::Node.new 'trkseg'
20
+ track << trkseg
21
+
22
+ 1.upto(1000) do |n|
23
+ trkpt = XML::Node.new 'trkpt'
24
+ trkpt['lat'] = n.to_s
25
+ trkpt['lon'] = n.to_s
26
+ trkseg << trkpt
27
+ end
28
+ end
@@ -0,0 +1,23 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ # test of bug 13310, clears MEM2
6
+
7
+ include GC
8
+
9
+ inner = XML::Node.new('inner')
10
+ save = nil
11
+ 1.times do
12
+ outer = XML::Node.new('outer')
13
+ outer.child = inner
14
+ 1.times do
15
+ doc = XML::Document.new
16
+ doc.root = outer
17
+ # Uncomment the following line and it won't crash
18
+ save = doc
19
+ end
20
+ garbage_collect
21
+ end
22
+ garbage_collect
23
+ puts inner
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0"?>
2
+ <test/>
@@ -0,0 +1,11 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ 10_000.times {|n|
6
+ j=XML::Node.new2(nil,"happy#{n}")
7
+ 10.times {|r|
8
+ j1=XML::Node.new("happy#{r}","farts")
9
+ j.child=j1
10
+ }
11
+ }
@@ -0,0 +1,13 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <?xml-stylesheet type="text/xsl" href="my_stylesheet.xsl"?>
3
+ <feed xmlns="http://www.w3.org/2005/Atom">
4
+ <!-- Not a valid atom entry -->
5
+ <entry>
6
+ <title type="html"><![CDATA[<<strong>>]]></title>
7
+ <content type="xhtml">
8
+ <xhtml:div xmlns:xhtml="http://www.w3.org/1999/xhtml">
9
+ <xhtml:p>hi there</xhtml:p>
10
+ </xhtml:div>
11
+ </content>
12
+ </entry>
13
+ </feed>
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <bands genre="metal">
3
+ <m�tley_cr�e country="us">M�tley Cr�e is an American heavy metal band formed in Los Angeles, California in 1981.</m�tley_cr�e>
4
+ <iron_maiden country="uk">Iron Maiden is a British heavy metal band formed in 1975.</iron_maiden>
5
+ </bands>
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <bands genre="metal">
3
+ <mötley_crüe country="us">Mötley Crüe is an American heavy metal band formed in Los Angeles, California in 1981.</mötley_crüe>
4
+ <iron_maiden country="uk">Iron Maiden is a British heavy metal band formed in 1975.</iron_maiden>
5
+ </bands>
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <bands genre="metal">
3
+ <mötley_crüe country="us">An American heavy metal band formed in Los Angeles, California in 1981.</mötley_crüe>
4
+ <iron_maiden country="uk">British heavy metal band formed in 1975.</iron_maiden>
5
+ </bands>
@@ -0,0 +1,146 @@
1
+ <?xml version="1.0"?>
2
+ <!-- Sample xml file from Microsoft.
3
+ See http://msdn.microsoft.com/en-us/library/ms762271(VS.85).aspx -->
4
+ <catalog>
5
+ <book id="bk101">
6
+ <author>Gambardella, Matthew</author>
7
+ <title>XML Developer's Guide</title>
8
+ <genre>Computer</genre>
9
+ <price>44.95</price>
10
+ <publish_date>2000-10-01</publish_date>
11
+ <description>
12
+ An in-depth look at creating applications
13
+ with XML.
14
+ </description>
15
+ </book>
16
+ <book id="bk102">
17
+ <author>Ralls, Kim</author>
18
+ <title>Midnight Rain</title>
19
+ <genre>Fantasy</genre>
20
+ <price>5.95</price>
21
+ <publish_date>2000-12-16</publish_date>
22
+ <description>
23
+ A former architect battles corporate zombies,
24
+ an evil sorceress, and her own childhood to become queen
25
+ of the world.
26
+ </description>
27
+ </book>
28
+ <book id="bk103">
29
+ <author>Corets, Eva</author>
30
+ <title>Maeve Ascendant</title>
31
+ <genre>Fantasy</genre>
32
+ <price>5.95</price>
33
+ <publish_date>2000-11-17</publish_date>
34
+ <description>
35
+ After the collapse of a nanotechnology
36
+ society in England, the young survivors lay the
37
+ foundation for a new society.
38
+ </description>
39
+ </book>
40
+ <book id="bk104">
41
+ <author>Corets, Eva</author>
42
+ <title>Oberon's Legacy</title>
43
+ <genre>Fantasy</genre>
44
+ <price>5.95</price>
45
+ <publish_date>2001-03-10</publish_date>
46
+ <description>
47
+ In post-apocalypse England, the mysterious
48
+ agent known only as Oberon helps to create a new life
49
+ for the inhabitants of London. Sequel to Maeve
50
+ Ascendant.
51
+ </description>
52
+ </book>
53
+ <book id="bk105">
54
+ <author>Corets, Eva</author>
55
+ <title>The Sundered Grail</title>
56
+ <genre>Fantasy</genre>
57
+ <price>5.95</price>
58
+ <publish_date>2001-09-10</publish_date>
59
+ <description>
60
+ The two daughters of Maeve, half-sisters,
61
+ battle one another for control of England. Sequel to
62
+ Oberon's Legacy.
63
+ </description>
64
+ </book>
65
+ <book id="bk106">
66
+ <author>Randall, Cynthia</author>
67
+ <title>Lover Birds</title>
68
+ <genre>Romance</genre>
69
+ <price>4.95</price>
70
+ <publish_date>2000-09-02</publish_date>
71
+ <description>
72
+ When Carla meets Paul at an ornithology
73
+ conference, tempers fly as feathers get ruffled.
74
+ </description>
75
+ </book>
76
+ <book id="bk107">
77
+ <author>Thurman, Paula</author>
78
+ <title>Splish Splash</title>
79
+ <genre>Romance</genre>
80
+ <price>4.95</price>
81
+ <publish_date>2000-11-02</publish_date>
82
+ <description>
83
+ A deep sea diver finds true love twenty
84
+ thousand leagues beneath the sea.
85
+ </description>
86
+ </book>
87
+ <book id="bk108">
88
+ <author>Knorr, Stefan</author>
89
+ <title>Creepy Crawlies</title>
90
+ <genre>Horror</genre>
91
+ <price>4.95</price>
92
+ <publish_date>2000-12-06</publish_date>
93
+ <description>
94
+ An anthology of horror stories about roaches,
95
+ centipedes, scorpions and other insects.
96
+ </description>
97
+ </book>
98
+ <book id="bk109">
99
+ <author>Kress, Peter</author>
100
+ <title>Paradox Lost</title>
101
+ <genre>Science Fiction</genre>
102
+ <price>6.95</price>
103
+ <publish_date>2000-11-02</publish_date>
104
+ <description>
105
+ After an inadvertant trip through a Heisenberg
106
+ Uncertainty Device, James Salway discovers the problems
107
+ of being quantum.
108
+ </description>
109
+ </book>
110
+ <book id="bk110">
111
+ <author>O'Brien, Tim</author>
112
+ <title>Microsoft .NET: The Programming Bible</title>
113
+ <genre>Computer</genre>
114
+ <price>36.95</price>
115
+ <publish_date>2000-12-09</publish_date>
116
+ <description>
117
+ Microsoft's .NET initiative is explored in
118
+ detail in this deep programmer's reference.
119
+ </description>
120
+ </book>
121
+ <book id="bk111">
122
+ <author>O'Brien, Tim</author>
123
+ <title>MSXML3: A Comprehensive Guide</title>
124
+ <genre>Computer</genre>
125
+ <price>36.95</price>
126
+ <publish_date>2000-12-01</publish_date>
127
+ <description>
128
+ The Microsoft MSXML3 parser is covered in
129
+ detail, with attention to XML DOM interfaces, XSLT processing,
130
+ SAX and more.
131
+ </description>
132
+ </book>
133
+ <book id="bk112">
134
+ <author>Galos, Mike</author>
135
+ <title>Visual Studio 7: A Comprehensive Guide</title>
136
+ <genre>Computer</genre>
137
+ <price>49.95</price>
138
+ <publish_date>2001-04-16</publish_date>
139
+ <description>
140
+ Microsoft Visual Studio 7 is explored in depth,
141
+ looking at how Visual Basic, Visual C++, C#, and ASP+ are
142
+ integrated into a comprehensive development
143
+ environment.
144
+ </description>
145
+ </book>
146
+ </catalog>
@@ -0,0 +1,58 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <template>
3
+ <body>
4
+ <section>
5
+ <txt>Some Preset Data Here</txt>
6
+ <txt>Some Preset Data Here</txt>
7
+ <txt>name: quack!</txt>
8
+ <txt>Some Preset Data Here</txt>
9
+ <txt>Some Preset Data Here</txt>
10
+ <txt>Some Preset Data Here</txt>
11
+ <txt>Some Preset Data Here</txt>
12
+ <txt>city: quack!</txt>
13
+ <txt>Some Preset Data Here</txt>
14
+ <txt>Some Preset Data Here</txt>
15
+ <txt>Some Preset Data Here</txt>
16
+ <txt>Some Preset Data Here</txt>
17
+ <txt>state: quack!</txt>
18
+ <txt>Some Preset Data Here</txt>
19
+ <txt>Some Preset Data Here</txt>
20
+ <txt>Some Preset Data Here</txt>
21
+ <txt>Some Preset Data Here</txt>
22
+ <row>
23
+ <txt>year: Vroom!</txt>
24
+ <txt>make: Vroom!</txt>
25
+ <txt>model: Vroom!</txt>
26
+ </row>
27
+ <row>
28
+ <txt>year: Vroom!</txt>
29
+ <txt>make: Vroom!</txt>
30
+ <txt>model: Vroom!</txt>
31
+ </row>
32
+ <row>
33
+ <txt>year: Vroom!</txt>
34
+ <txt>make: Vroom!</txt>
35
+ <txt>model: Vroom!</txt>
36
+ </row>
37
+ <txt>Some Preset Data Here</txt>
38
+ <txt>Some Preset Data Here</txt>
39
+ <row>
40
+ <txt>year: Vroom!</txt>
41
+ <txt>make: Vroom!</txt>
42
+ <txt>model: Vroom!</txt>
43
+ </row>
44
+ <row>
45
+ <txt>year: Vroom!</txt>
46
+ <txt>make: Vroom!</txt>
47
+ <txt>model: Vroom!</txt>
48
+ </row>
49
+ <row>
50
+ <txt>year: Vroom!</txt>
51
+ <txt>make: Vroom!</txt>
52
+ <txt>model: Vroom!</txt>
53
+ </row>
54
+ <txt>Some Preset Data Here</txt>
55
+ <txt>Some Preset Data Here</txt>
56
+ </section>
57
+ </body>
58
+ </template>
@@ -0,0 +1,238 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2
+ "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml">
4
+ <head>
5
+ <title>Ruby Programming Language</title>
6
+ <link rel="stylesheet" type="text/css" href="/stylesheets/low.css" />
7
+ <link rel="stylesheet" type="text/css" href="/stylesheets/screen.css" media="screen" />
8
+ <link rel="stylesheet" type="text/css" href="/stylesheets/print.css" media="print" />
9
+ <link title="Low vision" rel="alternate stylesheet" type="text/css" href="/stylesheets/low_vision_screen.css" media="screen" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
11
+ <link href="/en/feeds/news.rss" rel="alternate" title="RSS" type="application/rss+xml" />
12
+
13
+ </head>
14
+ <body id="home-page-layout">
15
+ <div id="page">
16
+ <div id="header">
17
+ <div id="logo"><img src="/images/logo.gif" width="331" height="119" alt="Ruby - A Programmer's Best Friend" title="" /></div>
18
+ <div class="site-links">
19
+ <a href="/en/downloads/">Downloads</a><span class="separator"> | </span><a href="/en/documentation/">Documentation</a><span class="separator"> | </span><a href="/en/libraries/">Libraries</a><span class="separator"> | </span><a href="/en/community/">Community</a><span class="separator"> | </span><a href="/en/news/">News</a><span class="separator"> | </span><a href="/en/security/">Security</a><span class="separator"> | </span><a href="/en/about/">About Ruby</a>
20
+ </div>
21
+ </div>
22
+ <hr class="hidden-modern" />
23
+ <div id="main-wrapper">
24
+ <div id="main">
25
+ <div id="content-wrapper">
26
+ <div id="head-wrapper-1">
27
+ <div id="head-wrapper-2">
28
+ <div id="head">
29
+
30
+ <div id="intro">
31
+ <h1>Ruby is&#8230;</h1>
32
+ <p>A dynamic, open source programming language with a focus on
33
+ simplicity and productivity. It has an elegant syntax that is
34
+ natural to read and easy to write.</p>
35
+ <p><a href="about/">Read&nbsp;More&#8230;</a></p>
36
+ </div>
37
+ <div id="code">
38
+
39
+ <div class="comment"># The Greeter class</div>
40
+ <div><span class="keyword">class</span> Greeter</div>
41
+ <div>&nbsp;&nbsp;<span class="keyword">def</span> initialize<span class="op">(</span>name<span class="op">)</span></div>
42
+ <div>&nbsp;&nbsp;&nbsp;&nbsp;@name <span class="op">=</span> name<span class="op">.</span>capitalize</div>
43
+ <div>&nbsp;&nbsp;<span class="keyword">end</span></div>
44
+ <div class="blank-line">&nbsp;</div>
45
+ <div>&nbsp;&nbsp;<span class="keyword">def</span> salute</div>
46
+ <div>&nbsp;&nbsp;&nbsp;&nbsp;puts <span class="string">"Hello #{</span><span class="op">@</span>name<span class="string">}!"</span></div>
47
+ <div>&nbsp;&nbsp;<span class="keyword">end</span></div>
48
+ <div><span class="keyword">end</span></div>
49
+ <div class="blank-line">&nbsp;</div>
50
+ <div class="comment"># Create a new object</div>
51
+ <div>g <span class="op">=</span> Greeter<span class="op">.</span>new<span class="op">(</span><span class="string">"world"</span><span class="op">)</span></div>
52
+ <div class="blank-line">&nbsp;</div>
53
+ <div class="comment"># Output "Hello World!"</div>
54
+ <div>g<span class="op">.</span>salute</div>
55
+
56
+
57
+ </div>
58
+ </div>
59
+ </div>
60
+ </div>
61
+ <div id="content">
62
+
63
+
64
+
65
+
66
+ <div class="post">
67
+ <h3><a href="/en/news/2008/11/10/scotland-on-rails-2009/">Scotland on Rails 2009</a></h3>
68
+
69
+ <p><a href="http://scotlandonrails.com">Scotland on Rails</a> is pleased to announce that Conference2009 will be held March 26-28 in Edinburgh, Scotland.</p>
70
+
71
+
72
+ <p>We are now accepting submissions. The closing date for submissions is December 1st 2008, so there&#8217;s still time! Please mail your plaintext proposals for 45 minute sessions to <a href="mailto:submissions@scotlandonrails.com">submissions@scotlandonrails.com</a>.</p>
73
+
74
+
75
+ <p>Alternatively, if you are interested in sponsoring the conference, please mail <a href="mailto:sponsorship@scotlandonrails.com">sponsorship@scotlandonrails.com</a> for a prospectus.</p>
76
+
77
+
78
+ <p>Lastly, if you wish to be notified when we open for registration, you can sign up on the site.</p>
79
+
80
+
81
+ <p>Come and enjoy all that Edinburgh has to offer (whisky! castle! volcano! ruby! whisky!) in March. We hope to see you there.</p>
82
+
83
+
84
+
85
+ <p class="post-info">Posted by James Edward Gray II on 10 Nov 2008</p>
86
+ </div>
87
+
88
+
89
+ <div class="post">
90
+ <h3><a href="/en/news/2008/11/08/mountainwest-rubyconf-2009-dates-and-cfp/">MountainWest RubyConf 2009 dates and CFP</a></h3>
91
+
92
+ <p><a href="http://mtnwestrubyconf.org">MountainWest RubyConf 2009</a> will be held March 13-14, 2009, in Salt Lake City, Utah, <span class="caps">USA</span>.</p>
93
+
94
+
95
+ <p>Proposals to speak at this regional conference are now being accepted. Please send your proposal to proposals@mtnwestrubyconf.org.</p>
96
+
97
+
98
+ <p>The submission deadline is midnight (MST) on December 31st, 2008.</p>
99
+
100
+
101
+ <p>There are sponsorship opportunities available as well. Please contact sponsorship@mtnwestruby.org if you are interested.</p>
102
+
103
+
104
+ <p>Please see <a href="http://mtnwestrubyconf.org">mtnwestrubyconf.org/</a> for more details as they become available.</p>
105
+
106
+ <p><a href="/en/news/2008/11/08/mountainwest-rubyconf-2009-dates-and-cfp/">Continue&nbsp;Reading&#8230;</a></p>
107
+
108
+ <p class="post-info">Posted by james on 08 Nov 2008</p>
109
+ </div>
110
+
111
+
112
+
113
+ <div id="news">
114
+ <h3><a href="/en/news/">Other News</a></h3>
115
+ <ul>
116
+ <li><a href="/en/news/2008/10/28/ruby-1-9-1-preview-1-released/"> Ruby 1.9.1-preview 1 released</a>
117
+ <span class="post-info">Posted by james on 28 Oct 2008</span></li>
118
+ <li><a href="/en/news/2008/10/02/rubyconf-2008-is-sold-out/">RubyConf 2008 is Sold-out</a>
119
+ <span class="post-info">Posted by james on 02 Oct 2008</span></li>
120
+ <li><a href="/en/news/2008/09/09/voices-that-matter-2008/">Voices That Matter 2008</a>
121
+ <span class="post-info">Posted by James Edward Gray II on 09 Sep 2008</span></li>
122
+ </ul>
123
+ <ul>
124
+ <li><a href="/en/news/2008/08/23/dos-vulnerability-in-rexml/">DoS vulnerability in REXML</a>
125
+ <span class="post-info">Posted by Shugo Maeda on 23 Aug 2008</span></li>
126
+ <li><a href="/en/news/2008/08/11/ruby-1-8-7-p72-and-1-8-6-p287-released/">Ruby 1.8.7-p72 and 1.8.6-p287 released</a>
127
+ <span class="post-info">Posted by Shugo Maeda on 11 Aug 2008</span></li>
128
+ <li><a href="/en/news/2008/08/08/multiple-vulnerabilities-in-ruby/">Multiple vulnerabilities in Ruby</a>
129
+ <span class="post-info">Posted by Shugo Maeda on 08 Aug 2008</span></li>
130
+ </ul>
131
+ <p class="more"><a href="/en/news/">More&nbsp;News&#8230;</a></p>
132
+ </div>
133
+
134
+
135
+
136
+
137
+ </div>
138
+ </div>
139
+ <hr class="hidden-modern" />
140
+ <div id="sidebar-wrapper">
141
+ <div id="sidebar">
142
+
143
+ <div class="navigation"><a href="/en/downloads/"><img src="/images/download.gif" alt="Download Ruby" title="" /></a></div>
144
+
145
+
146
+ <div class="navigation">
147
+ <h3><strong>Get Started,</strong> it&#8217;s easy!</h3>
148
+ <ul class="menu">
149
+ <li><a href="http://tryruby.hobix.com/">Try Ruby! (in your browser)</a></li>
150
+
151
+ <li><a href="/en/documentation/quickstart/">Ruby in Twenty Minutes</a></li>
152
+ <li><a href="/en/documentation/ruby-from-other-languages/">Ruby from Other Languages</a></li>
153
+ </ul>
154
+ </div>
155
+
156
+ <div class="navigation">
157
+ <h3><strong>Explore</strong> a new world&hellip;</h3>
158
+ <ul class="menu">
159
+ <li><a href="/en/documentation/">Documentation</a></li>
160
+ <li><a href="http://www.amazon.com">Books</a></li>
161
+ <li><a href="/en/libraries/">Libraries</a></li>
162
+ <li><a href="/en/documentation/success-stories/">Success Stories</a></li>
163
+ </ul>
164
+ </div>
165
+
166
+ <div class="navigation">
167
+ <h3><strong>Participate</strong> in a friendly and growing community.</h3>
168
+ <ul>
169
+ <li><a href="/en/community/mailing-lists/">Mailing Lists</a>: Talk about Ruby with programmers from all around the world.</li>
170
+ <li><a href="/en/community/user-groups/">User Groups</a>: Get in contact with Rubyists in your area.</li>
171
+ <li><a href="/en/community/weblogs/">Weblogs</a>: Read about what&#8217;s happening right now in the Ruby community.</li>
172
+ <li><a href="/en/community/ruby-core/">Ruby Core</a>: Help polish the rough edges of the latest Ruby.</li>
173
+ <li><a href="http://redmine.ruby-lang.org/">Issue Tracking</a>: Report or help solve issues in Ruby.</li>
174
+ </ul>
175
+ </div>
176
+
177
+
178
+ <h3>Top Ruby Projects</h3>
179
+
180
+ <ul>
181
+ <li><a href="http://rubyforge.org/projects/instantrails/" title="Instant Rails is a one-stop Rails runtime solution containing Ruby, Rails, Apache, and MySQL, all pre-configured and ready to run. No installer, you simply drop it into the directory of your choice and run it. It does not modify your system environment. ">Instant Rails</a></li>
182
+
183
+ <li><a href="http://rubyforge.org/projects/ruby/" title="Main Ruby language project for providing a mirror of the Ruby releases, tracking bugs, etc.">Ruby</a></li>
184
+
185
+ <li><a href="http://rubyforge.org/projects/nitro/" title="Nitro is an efficient, yet simple engine for developing professional Web Applications using the Ruby language.">Nitro</a></li>
186
+
187
+ <li><a href="http://rubyforge.org/projects/activesupport/" title="Utility classes and extension to the standard library that were required by Rails, but found of general use.">Active Support</a></li>
188
+
189
+ <li><a href="http://rubyforge.org/projects/typo/" title="Typo is a lean weblogging engine powered by rails. It supports XMLRPC posting, ping/trackback, comments, textile, markdown, categories, all common exports, fulltext search and so on.">typo</a></li>
190
+
191
+ </ul>
192
+ <p class="more"><a href="/en/libraries/top-projects/">More&#8230;</a></p>
193
+
194
+
195
+ <h3>Syndicate</h3>
196
+ <p><a href="/en/feeds/news.rss">Recent News (RSS)</a></p>
197
+ </div>
198
+ </div>
199
+ <hr class="hidden-modern" />
200
+ <div class="foot">
201
+ <div class="site-links">
202
+ <a href="/en/downloads/">Downloads</a><span class="separator"> | </span><a href="/en/documentation/">Documentation</a><span class="separator"> | </span><a href="/en/libraries/">Libraries</a><span class="separator"> | </span><a href="/en/community/">Community</a><span class="separator"> | </span><a href="/en/news/">News</a><span class="separator"> | </span><a href="/en/security/">Security</a><span class="separator"> | </span><a href="/en/about/">About Ruby</a>
203
+ </div>
204
+ </div>
205
+ </div>
206
+ </div>
207
+ <div id="search-box">
208
+ <form id="search-form" action="/en/search/">
209
+ <table class="fieldset">
210
+ <tr>
211
+ <td>
212
+ <input class="field" type="text" name="q" />
213
+ </td>
214
+ <td>
215
+ <input class="button" type="submit" value="Search" />
216
+ </td>
217
+ </tr>
218
+ </table>
219
+ </form>
220
+ </div>
221
+ <div id="footer">
222
+ <div class="fine-print">
223
+ <p>Content available in <a href="/en/">English</a>, <a href="/fr/">French</a>, <a href="/ja/">Japanese</a>, <a href="/ko/">Korean</a>, <a href="/pl/">Polish</a>, <a href="/es/">Spanish</a>, <a href="/pt/">Portuguese</a>, <a href="/zh_CN/">Simplified Chinese</a>, <a href="/zh_TW/">Traditional Chinese</a>, <a href="/id/">Bahasa Indonesia</a>, <a href="/de/">German</a> and <a href="/it/">Italian</a>.</p>
224
+ <p>This website is made with Ruby and powered by <a href="http://radiantcms.org">Radiant CMS</a>.
225
+ It is proudly maintained by <a href="http://rubyidentity.org">members of the Ruby community</a>. Please contact
226
+ our <a href="mailto:webmaster@ruby-lang.org">webmaster</a> for questions or comments
227
+ concerning this website.</p>
228
+ </div>
229
+ </div>
230
+ </div>
231
+ <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
232
+ </script>
233
+ <script type="text/javascript">
234
+ _uacct = "UA-620926-1";
235
+ urchinTracker();
236
+ </script>
237
+ </body>
238
+ </html>