![](https://secure.gravatar.com/avatar/f280fbf7764035c257f907cf2223eac0.jpg?s=120&d=mm&r=g)
1 Feb
2013
1 Feb
'13
4:17 a.m.
In the following, (FOO) should evaluate to 50, but actually evaluates to 90 because BAR's A binding has overwritten FOO's. Should they not have separate bindings? (progn (let ((a 5)) (defun foo () (* 10 a))) (let ((a 9)) (defun bar () (* 100 a)))) var a = 5; function foo() { return 10 * a; }; var a = 9; function bar() { return 100 * a; }; Daniel