Script-Tip: Summe eines Arrays ermitteln

Die Summe eines Arrays lässt sich in auf verschiedenste Art und Weise ermitteln. In unserem heutigen Script-Tip wollen wir euch zeigen, welche Möglichkeiten es gibt.

[ruby]
# Das zu summierende Array
mein_array = [1, 8, 5, 3, 10]

# Die offensichtlichste Methode
sum = 0
mein_array.each { |a| sum+=a }

# Eine etwas kürzere Variante
mein_array.inject{|sum,x| sum + x }

# Wie man mit Ruby 1.9 zum Ziel kommt
mein_array.inject(:+)

# Mit der Hilfe von ActiveSupport
require ‚activesupport‘
mein_array.sum

# Oder man erweitert direkt die Array-Klasse um die benötigte Funktion
class Array
def summe
self.inject{|sum,x| sum + x }
end
end

mein_array.summe
[1,2,3,4].summe

[/ruby]

Rails 2.3.5 erschienen

Heute wurde das ein weiteres zweier Release veröffentlicht. Es enthält neben ein paar Bugfixes auch einen Security-Fix.
Daher wird empfohlen dieses Update durchzuführen. Es kann über die bekannten gems-Mechanismen „gem update rails“ durchgeführt werden.

Neben den Fixes sind auch ein paar Feaures in dieses Release gefloßen:

  • Kompatibilität mit Ruby 1.9 wurde verbessert
  • In Rails 3 wird die View-Helper-Methode h standardmäßig den ausgegebenen Text escapen.
  • Fixes für das Nokogiri-Backend für XmlMini

Weitere Details findet Ihr unter folgendem Link: http://weblog.rubyonrails.org/2009/11/30/ruby-on-rails-2-3-5-released

Programming Ruby 1.9: The Pragmatic Programmers‘ Guide

Ruby is a fully object-oriented language, much like the classic object-oriented language, Smalltalk. Like Smalltalk, it is dynamically typed (as opposed to Java or C++), but unlike Smalltalk, Ruby features the same conveniences found in modern scripting languages, making Ruby a favorite tool of intelligent, forward-thinking programmers and the basis for the Rails web framework.

This is the reference manual for Ruby, including a description of all the standard library modules, a complete reference to all built-in classes and modules (including all the new and changed methods introduced by Ruby 1.9). It also includes all the new and changed syntax and semantics introduced since Ruby 1.8. Learn about the new parameter passing rules, local variable scoping in blocks, fibers, and the new block declaration syntax, among other exciting new features.

Ruby 1.9 Released

Nach Rails 2.0 und openrorbook hat auch Matz ein Weinachtsgeschenk für die Community “rausgerückt”: Ruby 1.9 ist fertig und steht auf den FTP-Servern zum Download bereit.

Die aktuelle Version findet ihr unter:

ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.tar.bz2
407cc7d0032e19eb12216c0ebc7f17b3

ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.tar.gz
b20cce98b284f7f75939c09d5c8e846d

ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.zip
78b2a5f9a81c5f6775002c4fb24d2d75

ftp://ftp.ruby-lang.org/pub/ruby/binaries/mswin32/unstable/ruby-1.9.0-0-i386-mswin32.zip

Wer einen Überblick über die Änderunge in diesem Release braucht, dem sei die folgende Seite empfohlen:
http://eigenclass.org/hiki/Changes+in+Ruby+1.9

Auf dieser Seite werden nicht nur die Änderungen an 1.9 aufgeführt, sondern auch die Anpassungen die in dem nächsten Release kommen werden.