From: Luke Graham Date: 2005-02-14T16:06:18+09:00 Subject: can anyone verify this code as correct? class Object def choices(choicelist) if (!Class.class_variables.include? "@@cont") @@cont = [] end choicelist.each { |choice| callcc { |cc| @@cont << cc return choice } } nil end def condition(cond) return if (self.class == NilClass?) @@cont.pop.call if !cond.call end end class NilClass? def method_missing(methId, *args) return false end end foo = choices(1..100) bar = choices(1..100) condition(lambda{foo == (bar * 3)}) condition(lambda{bar > 10}) condition(lambda{(bar % 2) == 0}) puts foo puts bar Thanks for your help.