Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If you can't easily avoid those, you're not going to be capable of doing much else anyway.


I was responding to "If I understand what you mean by "immutable by default", then it's all Scheme implementations"; not whether one should or should not use mutating operations!


So what does "immutable by default" mean??? Is there even an agreed upon definition? Because you certainly didn't explain / explain clearly if that's what you were attempting to do... Clojure has mutable vars and set!, so it seems Scheme is no worse and fits that guy's definition of IbD.


Consider:

  (define x (vector 1 2 3 4))
  (define y x)
  (vector-set! x 0 100)
Should y[0] be 100 or 1?


That's not really relevant. According to the guy's own definition, Scheme is as immutable as Clojure, which is what he was specifically asking. They both have something like set!. If you want to wank off about Scheme not being 100% immutable, go right ahead, but it's clearly not what was being discussed.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: