
Issue #21385 has been updated by Dan0042 (Daniel DeLorme). For me "context" means something like `context = binding.eval("self")`, so I can't say I like `Context` very much for this. Actually none of the one-word suggestions sound quite right to me; they're either too generic or too cryptic. I think that `Namespace` is not such a bad name; classes loaded in one are not visible to the others, it really is a space for names, a namespace. It's just not a named namespace like classes and modules (assuming that #21316 is fixed). But the fact that core classes are "forked" in each namespace is something that the word `Namespace` doesn't convey. So yes it's a space for names, but not merely that. I think "sandbox" is really a descriptive word here, and btw I disagree that it must necessarily have a security connotation. `Ruby::NameSandbox` ? ---------------------------------------- Misc #21385: Namespace: Suggesting a rename https://bugs.ruby-lang.org/issues/21385#change-113691 * Author: fxn (Xavier Noria) * Status: Open ---------------------------------------- I'd like to suggest a rename of namespaces. The word "namespace" is already taken in Ruby. We say that classes and modules act as or represent namespaces. Constant paths nest them in practice. We say that it is a best practice that gems create their own namespace, etc. If the feature goes ahead with this name, the above sentences, well-established in the Ruby community, will start to sound confusing, because that meaning of "namespace" stays. If you look at the index in Matz's book, "namespaces" is indexed in pages 248–250. Title of section 7.5.1 is "Modules as Namespaces". Besides, I have had a few experiences explaining the proposal to people, and quickly realizing they assume this is something like C++ namespaces or Java packages. Then, I have to undo that mental model and start all over saying "forget that mental model". Those are like our constant paths, only more simple and strict. I think it may also be confusing in this sense (though this could be OK if it wasn't for the previous point.) To be constructive: Some alternative names that I have thought about are "isolates", "shields", or "cells". ("sandboxes" is close, but may have security connotations you do not want to suggest.) -- https://bugs.ruby-lang.org/