why under dynamic scope this code will return error for "g not defined"? when running ((ff) 5), at some point g will get a value (the f lambda) and will be inserted in