Možné duplicitné:
Aký je rozdiel medzi Ruby 1.8 a Ruby 1.9
Zistil som určité rozdiely v interpretácii globálnych a lokálnych premenných.
Môže mi niekto ukázať na zoznam veľkých rozdielov?
odpovede:
3 pre odpoveď č. 1Toto sú pravdepodobne najdôležitejšie zmeny:
Ruby 1.9 sa zmenil z bytia interpretované ako bytie skompilovaný bytecode (pomocou YARV VM).
Trieda String bola prepracovaná úplne na to, aby si uvedomil kódovanie.
Regulárne výrazy sú teraz implementované pomocou systému Oniguruma namiesto domáceho motora používa sa v Ruby 1.8 a umožňuje nové funkcie, ako je negatívny rozhľad.
Na
enumerator
knižnica z stdlib bol pridaný k jadru a väčšineEnumerable
metódy boli zmenil na návrat anEnumerator
pri vyvolaní bez bloku.Symbol#to_proc
bol pridaný.Existuje nová syntax pre lambdy,
->
ktorý umožňuje predvolené argumenty a lambdy odoberajúce bloky.
Existuje úplnejší zoznam zmien tu.
1 pre odpoveď č. 2
Jedným z hlavných bodov môže byť, že používajú iný VM (aspoň „štandardné“ distribúcie, samozrejme, že existuje množstvo možností, ako MacRuby, IronRuby atď.). Môžete sa pozrieť tu podrobnosti o všetkých zmenách.