I Ruby har ikke en variabel noen statisk type. En variabel er bare et navn man forbinder med en referanse til et objekt. (Dette er den korte forklaringen på hva dynamisk typing er.)
1| x = 'Norge' # Se, jeg er en tekst-streng (String). 2| x = [1,2,3] # Øh, jeg mener en Array. 3| x = 5 # Ups, nå er jeg en Fixnum. 4| 5| # Tilordninger kan lenkes 6| a = b = c = d = 5 7| 8| # Du trenger ikke ekstra variable for å bytte to verdier 9| x = 5 10| y = 3 11| x, y = y, x # Nå er x = 3 og y = 5 12| 13| # Denne er kjekk å ha når en metode vil returnere flere verdier 14| a,b,c = ['a','b','c'] 15| 16| # Ruby bruker prefiks for å angi variabel skop 17| $global_variabel = 'alle kan se meg!' 18| lokal_variabel = 'sånn som x, y, a, b, c etc.' 19| @instans_attributt = 'jeg tilhører det gjeldende objekt.' 20| @@klasse_attributt = 'jeg er felles for mange objekter.' 21| KONSTANT_VARIABEL = 'en selvmotsigelse?' |
Attributter kalles også instansvariable eller felt.
Enhver variabel som begynner med stor forbokstav er konstant i Ruby. Konstant vil si at variabel-referansen er konstant, ikke at objektet ikke kan endre tilstand.