Hacker News new | past | comments | ask | show | jobs | submit login

That parenthesis around let is important; it precisely delimits the scope for that x and y:

    (let [x 5 
          y 10]
      (foo x y))
    (foo x y) ;; now different x and y!
In C, I'm often doing:

  {
    foo *ptr = ...; // scope this just to this block.

  }
I don't want ptr to be visible other than in that block, especially if it has gone invalid/null.

The braces will be there if you program sanely and care about scope.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: