>FWIW, I would replace this whole thing with a data structure and subroutine >like so: > >%data = ( > ident => [1,8], [snip] Thanks! I knew there might be a more succinct way of doing this. So far I haven't actually written the routines that process the data, so changing this doesn't hurt anything at this point. Aisde from the fact that I'm being absurdly meticulous about commenting my code, your example is pretty much exactly how I'm now doing things. One question: Perviously I was doing an unshift() to prepend a 0th element for each record. Is this now unnecessary? I don't want to drop the first letter of the first field. (I realize this question sounds rather clueless, but programming of all stripes is more of a sideline for me. I occasionally still sound like a cluelessnewbie). --Brian # Fungal Parataxonomy Mycology Information (Mycoinfo) # Webmaster, Staff Writer **The World's First Mycology E-Journal** # <mailto:webmaster@mycoinfo.com> <http://www.mycoinfo.com/> # "A couple of guys trying to do something great..." ***** Want to unsubscribe from this list? ***** Send mail with body "unsubscribe" to mac-perl-request@iis.ee.ethz.ch