An updated version is now available, based to the feedback of Phillip J. Eby and David Hopwood (stand-alone module[1], patch[2]):
- the module is now reentrant - the sloppy case with Name nodes is now covered properly - the node lookup procedure was optimized, leading to a 20% speed increase on the average case... Phillip, I was wrong to doubt you. ;-) There is undoubtedly still room from improvement, but that's a good start. >> But I agree this looks a lot like JSON, since ecmascript syntax for >> literals looks a lot like the one of Python... For the same reasons there >> is a need for JSON, I think having something like miniconf in the >> standard lib would benefit the users. > > Actually, I would see more reason to include JSON in the standard library, > since it's at least something approaching an internet protocol these days. Having JSON there would indeed be nice: In fact, I recall being initially surprised it was not supported by the standard library. But is there a need to choose? Why not have both? The miniconf approach has its advantages and differences: - The code is short and simple. Since all the real work is performed by the Python parser, very little has to be done on top of that: it should be easy to maintain, and will benefit of all the future work (patches, etc.) that will be integrated to it in the future. - The source it works on is valid Python source, which seems to be a plus for a dynamic, reflexive language such as Python... Things such as this will work: >>> from miniconf import dump >>> file('test.py','w').write(dump({'spam': 1})) >>> import test I know this in not the best example, but you get the idea... - Unlike JSON, miniconf is not introducing any new notation or syntax at all: it uses a strict, well defined subset of the Python grammar that every Python user is already familiar with; it is in no way a data-interchange format, but it feels pretty natural in a all-python environment... In that sense, it is well documented and standardized. - Am I missing something, or is JSON not supporting comments inside the parse tree? That's not really convenient for storage of configuration information. Anyway, if I had to choose between the two, I would definitively want simplejson part of the standard library well before miniconf, since it can be used in so many different situations, but I wouldn't choose JSON as a configuration format given the choice to use the Python notation employed by miniconf either. Yours, -- Sylvain <[EMAIL PROTECTED]> Nobody said computers were going to be polite. [1]http://cheeseshop.python.org/pypi?:action=display&name=miniconf&version=1.1.0 [2]http://sourceforge.net/tracker/index.php?func=detail&aid=1527597&group_id=5470&atid=355470 _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com