i apologize for my late answer, i wrote a long draft mail with code yesterday for answering but it is too long i think to be send and will confuse everyone, i'm testing a lot of answer,perhaps modifying my goals too!, and try to summarize all that,not easy..... for now my goal change a little bit,it is already : "i need a procedure or macro that define a variable only if it is not bind and if it is just set! it" i will just add but define locally in the block or nested code not globally and for now that is the hard thing, i see some good solution but which sometimes bind the variable globally in the (current-module) and that is not what i want. I'm conducting tests still...... Damien