ruby es js wtf-ok

Hozzászólások

Ha a rubyhoz hozzátesszük, hogy:


irb(main):001:0> a=b
NameError: undefined local variable or method `b' for main:Object
	from (irb):1
	from :0
irb(main):002:0> a
=> nil
irb(main):003:0> b=raise "Eee!"
RuntimeError: Eee!
	from (irb):9
	from :0
irb(main):004:0> b
=> nil
irb(main):005:0> c=d if false
=> nil
irb(main):006:0> c
=> nil

Akkor már látszik, hogy az a=a egyáltalán nem rendkívüli módon kezelt dolog.

De azért érdekes volt.

Igen, végülis rubynál, ha alaposan végiggondoljuk, akkor logikus. Egy kicsit kivételesnek tűnő cornercase, de a végrehajtási szemantika következetes alkalmazásából adódik.

Na de a javascriptnél én úgy vagyok vele, mint az öreg bácsi a Star Wars megnézése után: "Ezt nem hiszem el! Ezt akkor sem hiszem el!" [mármint, hogy értelmesen van kitalálva és mégis ez következik belőle] :)
---
Internet Memetikai Tanszék