Hey James,

I’d be happy to review a PR if you were to put one up for this!

--Matt

From: James Van Alstine <[email protected]>
Sent: Monday, August 30, 2021 2:07 AM
To: [email protected]
Subject: Re: [Go] pretty printing

Playing with the Go implementation, I have noticed that many of the concrete 
implementations of array.Interface have a String() method. However, calling 
this method in a simple loop  over the columns will produce something like:

["@NB500956:89:HW2FHBGX2:1:11101:25648:1069 1:N:0:ATCACG" 
"@NB500956:89:HW2FHBGX2:1:11101:13871:1070 1:N:0:ATCACG" 
"@NB500956:89:HW2FHBGX2:1:11101:9975:1070 1:N:0:ATCACG" 
"@NB500956:89:HW2FHBGX2:1:11101:20247:1070 1:N:0:ATCACG" 
"@NB500956:89:HW2FHBGX2:1:11101:17754:1070 1:N:0:ATCACG" 
"@NB500956:89:HW2FHBGX2:1:11101:26223:1070 
1:N:0:ATCACG"]["ATACAGGCCTGANCCACTGTGCCCAGNCTANNTNATTANTGAANANAGAATNGTTNTAAATANANNNNNTNTNNNC"
 "CTCAACTCTGAGNCAGACAGAAATACNTTTNNTNTGAGTTACANCNTTCTTTTTCNACATATNCNNNNNTNGNNNT" 
"GAGTAACCACGTNCCCATGGCCACAGNTGANNGNGTCACACCTNANCCGGGAGAGNCAATCCNGNNNNNGNANNNC" 
"GATCGGAAGAGCNCACGTCTGAACTCNAGTNNCNTCCCGATCTNGNATGCCGTCTNCTGCTTNANNNNNANANNNG" 
"CAAGCAACTTACNTTACTTTAGGCTGNAAANNGNCTGCCTGAANTNCCTGCTCACNAATCCCNCNNNNNCNTNNNT" 
"TCAATTTCAGAACTTTTTATTGGTCTNTTCNNGNATTCATCTTNTNCCTGGTTTANTCTTGGNANNNNNTNTNNNT"]["AAAAAEEEEEEE#EEAEEEEEEEEEE#EEE##E#EEEE#EEEE#E#EEEEE#EEE#EEEAEE#A#####E#E###E"
 "AAAAAEEEEEEE#EEEEEEEEEEEEE#EEE##E#EEEEEEEEE#E#EEEEEEEEE#EAEEEE#A#####E#A###E" 
"AAAAAEEEEEEE#EEEEEEEEEAEEE#EEA##E#EEEEEEEE<#E#<EEEEEEEE#<EEEA/#/#####A#E###A" 
"AAAAAEEEEEEE#EEEEEEEEEEEEE#AEE##E#A////6AE<#E#EEEEEEEEA#A/EE/E#E#####/#E###E" 
"AAAAAEEEEEEE#EEAEEEEEEEEEE#EEE##E#EEEEEEEEE#E#EEEEEEEEE#EAEAEA#/#####E#A###E" 
"AAAAAEEEEEEEEEEEEEEEEEEEEE#EEA##E#EEEEEEEEE#E#<EAEEEEEE#EEEEEE#E#####E#E###E"]

I think it would be much better if Records were pretty printed to look 
something like:

column["id"]:
        [
        "@NB500956:89:HW2FHBGX2:1:11101:25648:1069 1:N:0:ATCACG"
        "@NB500956:89:HW2FHBGX2:1:11101:13871:1070 1:N:0:ATCACG"
        "@NB500956:89:HW2FHBGX2:1:11101:9975:1070 1:N:0:ATCACG"
        "@NB500956:89:HW2FHBGX2:1:11101:20247:1070 1:N:0:ATCACG"
        "@NB500956:89:HW2FHBGX2:1:11101:17754:1070 1:N:0:ATCACG"
        "@NB500956:89:HW2FHBGX2:1:11101:26223:1070 1:N:0:ATCACG"
        ]
column["seq"]:
        [
        
"ATACAGGCCTGANCCACTGTGCCCAGNCTANNTNATTANTGAANANAGAATNGTTNTAAATANANNNNNTNTNNNC"
        
"CTCAACTCTGAGNCAGACAGAAATACNTTTNNTNTGAGTTACANCNTTCTTTTTCNACATATNCNNNNNTNGNNNT"
        
"GAGTAACCACGTNCCCATGGCCACAGNTGANNGNGTCACACCTNANCCGGGAGAGNCAATCCNGNNNNNGNANNNC"
        
"GATCGGAAGAGCNCACGTCTGAACTCNAGTNNCNTCCCGATCTNGNATGCCGTCTNCTGCTTNANNNNNANANNNG"
        
"CAAGCAACTTACNTTACTTTAGGCTGNAAANNGNCTGCCTGAANTNCCTGCTCACNAATCCCNCNNNNNCNTNNNT"
        
"TCAATTTCAGAACTTTTTATTGGTCTNTTCNNGNATTCATCTTNTNCCTGGTTTANTCTTGGNANNNNNTNTNNNT"
        ]
column["qual"]:
        [
        
"AAAAAEEEEEEE#EEAEEEEEEEEEE#EEE##E#EEEE#EEEE#E#EEEEE#EEE#EEEAEE#A#####E#E###E"
        
"AAAAAEEEEEEE#EEEEEEEEEEEEE#EEE##E#EEEEEEEEE#E#EEEEEEEEE#EAEEEE#A#####E#A###E"
        
"AAAAAEEEEEEE#EEEEEEEEEAEEE#EEA##E#EEEEEEEE<#E#<EEEEEEEE#<EEEA/#/#####A#E###A"
        
"AAAAAEEEEEEE#EEEEEEEEEEEEE#AEE##E#A////6AE<#E#EEEEEEEEA#A/EE/E#E#####/#E###E"
        
"AAAAAEEEEEEE#EEAEEEEEEEEEE#EEE##E#EEEEEEEEE#E#EEEEEEEEE#EAEAEA#/#####E#A###E"
        
"AAAAAEEEEEEEEEEEEEEEEEEEEE#EEA##E#EEEEEEEEE#E#<EAEEEEEE#EEEEEE#E#####E#E###E"
        ]

I have implemented my own version of this, and I would be happy to make the 
changes to the Go implementation if anyone is interested in this.

On Sun, Aug 29, 2021 at 4:14 PM James Van Alstine 
<[email protected]<mailto:[email protected]>> wrote:
Is there pretty printing functionality in the Go implementations? I am thinking 
of something similar to 
this<https://urldefense.com/v3/__https:/github.com/apache/arrow/pull/2857/files*__;Iw!!PBKjc0U4!fmxeGcwejpLVfSH8GiTtUYf6o1UOWHoUFkdSc0v8g0R-5U04_u9NODBjLzRMnPE$>.
 If this functionality is not in the Go implementation, then is there a desire 
for it?

Reply via email to