# File lib/buildr/packaging/artifact_namespace.rb, line 577
    def ns(name, *uses, &block)
      name = name.to_sym
      sub = registry[name]
      if sub
        raise TypeError.new("#{name} is not a sub namespace of #{self}") unless sub.kind_of?(ArtifactNamespace)
      else
        sub = ArtifactNamespace.new("#{self.name}.#{name}")
        sub.parent = self
        registry[name] = sub
      end
      sub.use(*uses)
      yield sub if block_given?
      sub
    end