code: function () {
  			var args = slice.call(arguments),
  				constraint = options.args_map.getOrPut(args, function() {
  					return new Constraint(function () {
  						return getter_fn.apply(options.context, args);
  					});
  				});
  			return constraint.get();
  		}
docs: When getting a value either create a constraint or return the existing value