Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Perl and the New Frontier

by chanio (Priest)
on Apr 07, 2007 at 20:53 UTC ( #608860=perlmeditation: print w/replies, xml ) Need Help??


No, I'm not thinking about perl 6. I am thinking about a way of structuring all PM's knowledge in a clear and easy searchable way.

Perhaps, in a book. All full of references to other nodes and a text that would be able to connect it all. Or practically all.

I was thinking of using perl to learn how to explore any (new-to-the-user) operating system. I know that nearly all the same perl commands work in any platform. And that there are modules equivalent for every platform. So, following some simple steps, one should reach a point of understanding how it all works! As if they where recipes or using an ANY database...

For example, to learn by oneself how to use LINUX. So the book should be something like a tool to know how any operating system ticks. And to be able to translate our known ways of doing things in another OS into a new one.

Could we, for example, read it to learn how to use perl to do every Linux job, and then gradually start replacing the perl commands with other more specific Bash, or AWK Linux commands?

Later, it should be possible to do forensics of how the new OS reacts and how common problems should be fixed. So, perl could be used as a standard tool to explain how every OS (where perl works) behaves.

In other words, the book should asume that perl is a complete language for any known operating system. And even for network matters.

I would like to know if this is an original idea or if there are other books that do the same thing. Could it be done here to connect most of the existing nodes in a linear way? Does anybody envision a way of starting doing any part of this book?


Replies are listed 'Best First'.
Re: Perl and the New Frontier
by zentara (Archbishop) on Apr 08, 2007 at 15:40 UTC
    For example, to learn by oneself how to use LINUX.

    If I was to teach Linux 101, I would have the students get free iso's of a few distros like OpenSuSE, Fedora, Slackware, etc. Then have them install and configure them for internet connections, about 50 times each. Then compare them for similarities and differences. It sure teaches you alot to fdisk, format, setup dual boots, and get sound and X going. After installing, use mc (Midnight Commander) to poke around the root filesystem, and look at what the various files do.

    As far as using Perl as a complete language as a base to teach systems programming, I think you could do it, as long as you emphasize that Perl is just hiding the complexities of the underlying c based system. Then maybe in Linux 102, start showing c, and how Perl makes it easier. See The Rute User Tutorial

    I'm not really a human, but I play one on earth. Cogito ergo sum a bum
      Great book, zentara!

      Now, I know how to spend my next months with...

      I am also, planning to start exploring the new Minix 3 that should be considered LINUX's father :) and deals great with hardware. A future blending of both would make the most powerful operating system on Earth!

      I see so many similarities between both POSIX compliant OSs that I would like to have software like in SCI-FI Series of StarTrek when they arrive to a new planet and can diagnose the main characteristics of it in less than a minute.

      But how could my experience guide me in where to look at and how to adapt my knowledge to this new system? Then, I thought that if I could have written certaing scripts that had explored the LINUX system when I started learning my first steps on it, I would now have a kind of bundle of scripts that would make my exploration of new operating systems easier to achieve in a short time.

      Most of these OS have perl working on it! It wouldn't be difficult to run my bundle of exploring scripts in Solaris, for example, and get a brief idea of where to start looking or exploring. Or using it to point the differences between various LINUX distributions. For example, what is the root structure, or the etc/ structure, how does the system start, and so on...

      If this sort of bundle could do a good job, it could even evolve into a way of translating a working system into another OS just with a click: creating variables, folders, rc scripts and links!

      Notice that this is not my idea, although I haven't found out where were IBM heading, they explain a lot about what they call autonomic computer that would be able to self heal, etc.

      Besides, configuring a system is no longer going to be a required step, since most new LINUX auto-configures when you boot... And Minix is said to be able to auto-re-configure just when any peripheric fails!

        point the differences between various LINUX distributions. For example, what is the root structure, or the etc/ structure, how does the system start, and so on..

        One good resource is Linux From Scratch which teaches you how to go from bare-nothing to a working linux system.

        Basically you have the kernel, which is started up (booted). Then it calls "init"( there are a few variations) which goes into /etc/rc.d or /etc/init.d and runs a series of startup scripts in a prescribed order. Those take the machine through the various run-levels, single-user,multi-user,multi-user-w-network, X windows.

        There also is a set of perl utilities call Perl Power Tools, that emulate all the basic c system commands. Check them out at PPT

        I'm not really a human, but I play one on earth. Cogito ergo sum a bum

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://608860]
Approved by ikegami
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (8)
As of 2017-09-25 19:58 GMT
Find Nodes?
    Voting Booth?
    During the recent solar eclipse, I:

    Results (288 votes). Check out past polls.