On 17Mar2015 07:36, Steven D'Aprano <steve+comp.lang.pyt...@pearwood.info> 
wrote:
I must admit that the Linux filesystem layout strikes me as awfully pedantic
and fussy. We're happy to use our home directory as an undifferentiated bag
with no structure, dumping binaries, scripts, documents, data files, config
files and everything else into $HOME, but for applications we have:

/bin
/sbin
/usr/bin
/usr/sbin
/usr/local/bin
/usr/local/sbin
/opt

and probably more, to say nothing of

/lib
/usr/lib
/usr/local/lib

Yeah, it is a bit nuts. A lot of that is history:

 /bin vs /sbin
/sbin was staticly linked executables, which needed to work early in the boot process (or in rescue situations) before (arbitrarily placed) dynamic libraries were available; as a consequence, /sbin these days mostly contains admin commands (necessary) versus /bin with the other commands (less critical, just useful) Less of an issue these days with bigger drives, so /bin vs /sbin is mostly historic and unnecessary

 / vs /usr (and therefore /bin vs /usr/bin etc)
   the root fs (/0 used to be very small, limiting what would fit
   /usr was larger and mounted later
There are multiple reasons for this, including the size of the system you need to repair to rescue (repair a small / vs something bigger) and limiting damage (less I/O to /, therefore less risk of need of repair)
   and so forth.
Less of an issue these days with bigger and faster drives, fo /bin vs /usr/bin is historic and unnecessary

 / (and /usr) vs /usr/local
This is architectural and important. /usr/local tends to be for extras not supplied by the OS provider/vendor. So a bare supplies OS will have stuff in / and /usr, but /usr/local will be an empty skeleton for people to add stuff to without treading on the supplied and supported OS areas.

Yes, off topic, sorry.

Python 3 vs Python 2: a good thing IMO. The way the transition was done? Correct IMO. Add nonbreaking stuff to the 2.x series (with, yield from, extra libraries supporting interfaces coming in the 3.x series, so forth) but keep legacy code working unchanged. With 3.x, cut to changes that would break legacy code, but we now have a cleaner and better language.

And re Paul Rubin's "fork the language" remakr: Python 3.x _is_ the fork!

I try to make most of my code work in both py2 and py3; easier to run on multiple systems. But I definitely have code that works so much better in python 3 that I will never backport it; the example I have in mind started as python 2 and spent years in bytes/text indecision and confusion. Bite the bullet and go py3, an a whole class of pervasive issue just go away.

Cheers,
Cameron Simpson <c...@zip.com.au>

PARANOIDS!!!! They're EVERYWHERE!!!
       - bcash@crchh410.NoSubdomain.NoDomain (Brian Cash)
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to