Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • What? No IO::Socket?!?
    • Hey, that's taking the easy way out. IO::Socket is just a convenience wrapper around the raw socket routines.

      perldoc -f socket
      --
      J. David works really hard, has a passion for writing good software, and knows many of the world's best Perl programmers
      • So whats wrong with opening /dev/tcp and using some judicious ioctl on it then ;-}

        /J\
        • /dev/tcp! The luxury! Why, in my day, we had to compose Ethernet frames by hand and fiddle with network card I/O ports to get anything sent. And there weren't none of this full duplex nonsense back then, either. You young whippersnappers....

          --

          -- 
          Esli epei eto cumprenan, shris soa Sfaha.
          Aettot ibrec epesecoth, spakhea scrifeteis.

          • Don't laugh. I worked at CERN on the safety systems for one on the large experiments. Local monitoring of the devices were done with small, VME and M68k based processor cards that they had stripped from some ancient, earlier experiment. These things should be in a museum.

            The good news was that they had a built-in Ethernet chip. The bad news was that they did not have enough RAM to load the TCP/IP drivers. Rather then install more RAM, the obvious (!) solution was for the safety system to just drive the Ethernet chip directly. So that's what it did. Raw Ethernet - yummy.

            In the other end was a VAX cluster for the central monitoring and alarms. Obviously we needed to read these raw Ethernet frames there, and we had to update and control the distributed safety processors using raw Ethernet.

            The good news was that somebody had written a library to help you send and receive these frames. It was a custom device driver and a small API.

            The bad news was that he had written it in Fortran.

            Yes, Fortran. That obvious language for low level bit manipulation and device drivers. You remember Fortran? Go look it up :-)

            But the REALLY bad news was that I was responsible for maintaining this. Scared the sh*t out of me.

            -----

            This post has absolutely nothing to do with perl, except to show that there is indeed more than one way to do it and often it is THE WRONG WAY.