> > I still don't understand why intercepting the all-numeric syntax > > isn't good enough, and why you want a <numeric> prefix. > > > I guess intercepting all numeric is OK, it is just less efficient > (since it requires a trial parsing of an address, which is wasted if > it is not all numeric), and because it is so easy to implement > <numeric>. The performance loss will be unmeasurable (parsing a string of at most 11 bytes against a very simple pattern). Compare that to the true cost of adding <numeric>: documentation has to be added (and dozens of books updated), and code that wants to use numeric addresses has to be changed. > However, all my operational goals are achieved if the > old check for pure numeric is reinstated at the lowest level > (probably in getsockaddrarg in socketmodule.c), so it is used > everywhere. Right. > > The reason I'm reluctant to add a new notation is that AFAIK it would > > be unique to Python. It's better to stick to standard notations IMO. > > <broadcast> was probably a mistake, since it seems to mean the same as > > 0.0.0.0 (for IPv4). > I accept this logic. However, python is hiding a very useful (for > efficiency) piece of the API, or depending on guessing whether you want > it or not by looking at the format of an address. There are times in > higher-level (python) code where getaddrinfo is called to get a CNAME, > where I would also like to cause the raw IP to be returned by force, > instead of attempting to get a CNAME, since I already know, by the IP I > chose, that one doesn't exists. If we make the same check for numeric > IPs in getaddrinfo, then it becomes impossible to resolve numeric names > back to real ones. There is not way for getaddrinfo to know which way > we want it, since in this case both ways might be needed. You're right, this functionality should be made available. IMO the right solution is to make it a separate API in the socket module, not to add more syntax to the existing address parsing code. --Guido van Rossum (home page: http://www.python.org/~guido/)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4