Training, Open Source computer languages

PerlPythonMySQLTclRubyC & C++LuaJavaTomcatPHPhttpdLinux

Search our site for:
Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact
Ruby - Totally Topical

Ruby supports topicalisation - the $_ variable being set by certain statements when a piece of code such as gets in a while statement isn't assigned, and the the same variable being used in many other methods - and even as the object on which methods run by default - in following code.

Here's a piece of code that does NOT use topicalisation:

while info = DATA.gets
  iparts = info.split(/\s+/)
  next unless info =~ /Ruby/
  puts iparts[-1]
  end
__END__
Ruby is a great language
Python is a good language
Ruby is a type of gem
Python is a species of snake
Ruby is a colour
Woodland is a group of trees


And here is the same piece of code with the default input and pattern matching space left out everywhere that info occurred above. And split defaults to splitting at white space, so that can be simplified too.

while DATA.gets
  iparts = split
  next unless /Ruby/
  puts iparts[-1]
  end
__END__
Ruby is a great language
Python is a good language
Ruby is a type of gem
Python is a species of snake
Ruby is a colour
Woodland is a group of trees


Whichever way I run that:

grahamellis$ ruby gloop1
language
gem
colour
grahamellis$

(written 2006-12-16 04:45:47)

 
Associated topics are indexed under
R110 - Ruby - Special Variables and Pseudo-Variables

Back to
Melksham Quiz
Previous and next
or
Horse's mouth home
Forward to
Adding a member to a Hash in Ruby
Some other Articles
Training on Cascading Style Sheets
Positioning with Cascading Style Sheets
Enthusiastic, but ....
Adding a member to a Hash in Ruby
Ruby - Totally Topical
Melksham Quiz
You should think you're first in a hotel room
Ruby v Perl - interpollating variables
puts - opposite of chomp in Ruby
Equality in Ruby - == eql? and equal?
1892 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

© WELL HOUSE CONSULTANTS LTD., 2008: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 0800 043 8225 or 01225 708225 • FAX: 0845 8382 405 or 01225 707126 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho