Despite advice to the contrary almost everywhere, I think that there are uses for "with". For example, I'm working on a domain model framework for Javascript, which uses the underscore character in much the same way that jQuery uses "$". This means that without "with", I have lots of underscores scattered through my code in ways that make it less readable. Here's a random line from an application using the framework:
_.People().sort(_.score(_.isa(_.Parent)),'Surname','Forename');
whereas with "with" it would look like
with (_) {
...
People().sort(score(isa(Parent)),'Surname','Forename');
...
}
What would be really useful is a read-only version of "with".