On Jun 24, 1:21 pm, "Diez B. Roggisch" <de...@nospam.web.de> wrote: > Norberto Lopes wrote: > > On Jun 24, 11:59 am, "Diez B. Roggisch" <de...@nospam.web.de> wrote: > >> Norberto Lopes wrote: > >> > Hi all. > >> > Assuming that python dictionaries already provide a bit of "shoot > >> > yourself in the foot", I think what I have in mind would not be so > >> > bad. > > >> What kind of foot-shooting do you have in mind? > > > a = { "foo" : { "bar" : "moo" }} > > a["bar"] = a["foo"] > > print a > > {'foo': {'bar': 'moo'}, 'bar': {'bar': 'moo'}} > > a["foo"]["bar"] = a["foo"] > > print a > > {'foo': {'bar': {...}}, 'bar': {'bar': {...}}} > > > (I know it's not a C shoot in the foot or something but still...) > > And something working alike for lists and objects. Cyclic references are a > fact of (programming)-life unless you go fully functional - and then you'd > certainly miss it sometimes.. > Yes. (and sometimes you miss functional :D)
> > config = {"home" : "/home/test"} > > config["user1"] = config["home"] + "/user1" > > config["user2"] = config["home"] + "/user2" > > config["python-dev"] = config["user1"] + "/py-dev" > > > Now, if you change config["home"] you'd have to redo all of the other > > entries. With the first one (assuming pointers to the entries) > > everything would get updated. Although python does not handles dict > > keys/values this way. Now that I think of this there would be a lot > > more than just syntactic sugar for this. > > Things that are re-done usually are useful being put into a function. Then > redoing becomes easier :) > > Diez True. In any case, reading from your pov, it seems that the solution would cause more problems than solving one. Thanks for the feedback though. Much appreciated :) -- http://mail.python.org/mailman/listinfo/python-list