On Fri, 26 Apr 2019 13:09:46 +0100 mick crane <mick.cr...@gmail.com> wrote:
> On 2019-04-26 12:48, to...@tuxteam.de wrote: > > On Fri, Apr 26, 2019 at 12:19:09PM +0100, mick crane wrote: > >> sorry to be a nuisance > > > > You are not (not to me, at least :-) > > > >> can somebody explain generally what this scheme of things with the > >> dots has to do with ? > >> seen this in perl as the kind of hierarchy of modules but how is > >> this to do with the OS ? > >> > >> ~$ apropos nameserver > >> Net::DNS::Nameserver (3pm) - DNS server class > > > > You mean those double colons ('::')? > > > > If yes: those are just separators for the Perl module namespace, > > which conceptually is a hierarchy. At the (right) end you can put > > some object (function, variable) living in that module's [1] > > namespace. > > > > Those are just a device to subdivide the namespace and to organize > > file system "places" [1] -- they have no intrinsic "meaning" to perl > > (i.e. the language itself has no notion of "Net" or "Net::DNS" -- > > just of "Net::DNS::Nameserver"). > > > > Cf "perldoc -f require" for the full thing :-) > > > > Cheers > > > > [1] In Perl parlance, it is a "package". > > [2] Typically you'll find the package code in Net/DNS/Nameserver.pm > > under a suitable "module root", e.g. /usr/share/perl5. The whole > > list of roots is in the special array variable @INC. > > > > -- tom??s > > thanks, I don't think I'll ever properly comprehend this stuff but I > do like it when things work. > What you're probably more interested in is getting modules as Debian packages where possible. Where they exist, they are normally called something like libnet-dns-nameserver-perl (not a real Debian package, by the way), adding 'lib' at the beginning, '-perl' at the end and replacing the doubled colons with hyphens, all lower case. If that isn't exactly right, a search should find what you want. But there's a *lot* of perl... and only a subset is packaged in Debian. -- Joe