The Author Online Book Forums are Moving

The Author Online Book Forums will soon redirect to Manning's liveBook and liveVideo. All book forum content will migrate to liveBook's discussion forum and all video forum content will migrate to liveVideo. Log in to liveBook or liveVideo with your Manning credentials to join the discussion!

Thank you for your engagement in the AoF over the years! We look forward to offering you a more enhanced forum experience.

import-bot (20211) [Avatar] Offline
#1
[Originally posted by ndhall]

At Consultec, we would like to replace our Cobol programs that process and
transform very large datasets that are obtained from IBM MVS - OS/390
mainframes. Two questions: 1) Are CPAN modules available that will properly
handle Packed Decimal data (COMP-3 for you Cobol folks) and Binary data (COMP
in Cobol)? 2) Can Perl 5.005.xxx handle file sizes in excess of 64GB? We are
running Perl 5.005.03 on a Sun Solaris 7 system with a 64-bit kernel.

Thanks.
Norman D. Hall
import-bot (20211) [Avatar] Offline
#2
Re: Parsing EBCDIC files from IBM mainframes
[Originally posted by dave]

> Two questions: 1) Are CPAN modules available that will properly handle Packed
> Decimal data (COMP-3 for you Cobol folks) and Binary data (COMP in Cobol)?

A quick search on http://search.cpan.org for the words 'COMP' and 'packed'
didn't throw up anything that looked useful. You can probably write something
using pack and unpack. And don't forget the Convert::EDCDIC module that I
discuss in the book.

If you do end up writing something of your own to do these conversions, please
consider submitting it to the CPAN so that other can use it too.

> 2) Can Perl 5.005.xxx handle file sizes in excess of 64GB? We are running
Perl
> 5.005.03 on a Sun Solaris 7 system with a 64-bit kernel.

Perl is only constrained by the amount of memory available. And even that is
only a problem if you try to read the whole file into memory at once. For a
file of that size you'd be better advised to process it a record at a time.

hth,

Dave...