Ave,
        I have two problems with outer product in GNU APL; one of them is maybe 
a bug, the other is nearly definitely a bug.

        If I use the product with a standard function like ×, everything works 
as it should:

              ∘.×/ (5 2) (7 6 4)
         35 30 20 
         14 12  8 
        
        However, if I replace it with a custom function, it does something 
different:

              ∘.{⍺×⍵}/ (5 2) (7 6 4)
        35

        It does the exactly same thing with custom non-lambda functions

              P ← {⍺×⍵}
              ∘.P/ (5 2) (7 6 4)
        35


        I have only little experience with APL (30 hours), but I think that all 
functions are created equal (I hope so!), and the both products above should be 
same. (If it's a valid behaviour, -- a feature, not a bug -- I'd be grateful if 
you could explain it to me.)

        [ If I envelope the whole product in a lambda, it works again:

              {⍺ ∘.{⍺×⍵} ⍵}/ (5 2) (7 6 4)
         35 30 20 
         14 12  8 
        
        ]

        Now for the sure bug: the expression (for two bit vectors K and L -- it 
doesn't seem to depend on their contents or shapes)

        K { { ⍺ ∘.{| ⍺ - ⍵ + 0J1} ⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} L

        was supposed to get the positions of 1s in both vectors ( {⍵/⍳⍴⍵}¨⍺ ⍵ , 
and do an outer product of these position lists using a function " 
sqrt(difference^2 + 1) ". However, it says 

        copying:             '0' at Executable.cc:627
        tidx:                '2' at Executable.cc:628

        ----------------------------------------
        -- Stack trace at Executable.cc:629
        ----------------------------------------
        0x7f8af60cfb45 __libc_start_main
        0x43b425  main
        0x53909d   Workspace::immediate_execution(bool)
        0x474365    Command::process_line()
        0x46e1d0     Command::do_APL_expression(UCS_string&)
        0x4811c4      StatementList::fix(UCS_string const&, char const*)
        0x480030       Executable::setup_lambdas()
        0x5290af        UserFunction::UserFunction(Fun_signature, UCS_string 
const&, UCS_string const&, Token_string const&)
        0x480030         Executable::setup_lambdas()
        0x5290af          UserFunction::UserFunction(Fun_signature, UCS_string 
const&, UCS_string const&, Token_string const&)
        0x47fffe           Executable::setup_lambdas()
        0x47ec2f            Executable::extract_lambda_text(Fun_signature, int) 
const
        ========================================

        and exits (with state of 0). I think it shouldn't do that.

        [ But if I omit the {⍵/⍳⍴⍵}¨⍺ ⍵ and give some vector literals instead, 
it works as intended:

              {⍺∘.{|⍺-⍵+0J1}⍵}/ (5 2) (7 6 4)
         2.236067977 1.414213562 1.414213562 
         5.099019514 4.123105626 2.236067977 
        ]

Optime vale,
        D.

P. S.: This behaviour is exhibited by the Debian package (apl_1.4-1_amd64.deb) 
as well as by the source in Svn repository.
P. P. S.: I switched on all 41 logging facilites and ran it again. The 
resulting log should be attached.
0 input files:
UCS_string::UCS_string(): utf = )OFF
UCS_string::UCS_string(): ucs = )OFF
UCS_string::UCS_string(): utf = ]LOG
UCS_string::UCS_string(): ucs = ]LOG
UCS_string::UCS_string(): utf = )OFF
UCS_string::UCS_string(): ucs = )OFF
UCS_string::UCS_string(): utf = ]LOG
UCS_string::UCS_string(): ucs = ]LOG
UCS_string::UCS_string(): utf = ]LOG 1 ON
UCS_string::UCS_string(): ucs = ]LOG 1 ON
UCS_string::UCS_string(): utf = ]LOG ⍳42 ON
UCS_string::UCS_string(): ucs = ]LOG ⍳42 ON
UCS_string::UCS_string(): utf = ]LOG
UCS_string::UCS_string(): ucs = ]LOG
UCS_string::UCS_string(): utf = ]LOG 2 3 ON
UCS_string::UCS_string(): ucs = ]LOG 2 3 ON
UCS_string::UCS_string(): utf = ]LOG ⍳41,ON
UCS_string::UCS_string(): ucs = ]LOG ⍳41,ON
UCS_string::UCS_string(): utf = ⍳41
UCS_string::UCS_string(): ucs = ⍳41
UCS_string::UCS_string(): utf = ]LOG 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 ON
UCS_string::UCS_string(): ucs = ]LOG 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 ON
UCS_string::UCS_string(): utf = ]LOG
UCS_string::UCS_string(): ucs = ]LOG
UCS_string::UCS_string(): utf = ]LOG (1 2 3 4) ON
UCS_string::UCS_string(): ucs = ]LOG (1 2 3 4) ON
UCS_string::UCS_string(): utf = ]LOG 2 ON
UCS_string::UCS_string(): ucs = ]LOG 2 ON
UCS_string::UCS_string(): utf = )OFF
UCS_string::UCS_string(): ucs = )OFF
UCS_string::UCS_string(): utf = )OFF
UCS_string::UCS_string(): ucs = )OFF
UCS_string::UCS_string(): utf = )OFF
UCS_string::UCS_string(): ucs = )OFF
Binding thread #0 to core 0
thread_contexts_count: 1
busy_worker_count:     0
active_core_count:     1
thread # 0:  0x7fade3b19740 pool sema:  0 RUN  job:   0 no-name

Parallel::set_core_count(): keeping current core count of 1
thread_contexts_count: 1
busy_worker_count:     0
active_core_count:     1
thread # 0:  0x7fade3b19740 pool sema:  0 RUN  job:   0 no-name

argc: 84
  argv[0]: './apl'
  argv[1]: '--noColor'
  argv[2]: '-l'
  argv[3]: '1'
  argv[4]: '-l'
  argv[5]: '2'
  argv[6]: '-l'
  argv[7]: '3'
  argv[8]: '-l'
  argv[9]: '4'
  argv[10]: '-l'
  argv[11]: '5'
  argv[12]: '-l'
  argv[13]: '6'
  argv[14]: '-l'
  argv[15]: '7'
  argv[16]: '-l'
  argv[17]: '8'
  argv[18]: '-l'
  argv[19]: '9'
  argv[20]: '-l'
  argv[21]: '10'
  argv[22]: '-l'
  argv[23]: '11'
  argv[24]: '-l'
  argv[25]: '12'
  argv[26]: '-l'
  argv[27]: '13'
  argv[28]: '-l'
  argv[29]: '14'
  argv[30]: '-l'
  argv[31]: '15'
  argv[32]: '-l'
  argv[33]: '16'
  argv[34]: '-l'
  argv[35]: '17'
  argv[36]: '-l'
  argv[37]: '18'
  argv[38]: '-l'
  argv[39]: '19'
  argv[40]: '-l'
  argv[41]: '20'
  argv[42]: '-l'
  argv[43]: '21'
  argv[44]: '-l'
  argv[45]: '22'
  argv[46]: '-l'
  argv[47]: '23'
  argv[48]: '-l'
  argv[49]: '24'
  argv[50]: '-l'
  argv[51]: '25'
  argv[52]: '-l'
  argv[53]: '26'
  argv[54]: '-l'
  argv[55]: '27'
  argv[56]: '-l'
  argv[57]: '28'
  argv[58]: '-l'
  argv[59]: '29'
  argv[60]: '-l'
  argv[61]: '30'
  argv[62]: '-l'
  argv[63]: '31'
  argv[64]: '-l'
  argv[65]: '32'
  argv[66]: '-l'
  argv[67]: '33'
  argv[68]: '-l'
  argv[69]: '34'
  argv[70]: '-l'
  argv[71]: '35'
  argv[72]: '-l'
  argv[73]: '36'
  argv[74]: '-l'
  argv[75]: '37'
  argv[76]: '-l'
  argv[77]: '38'
  argv[78]: '-l'
  argv[79]: '39'
  argv[80]: '-l'
  argv[81]: '40'
  argv[82]: '-l'
  argv[83]: '41'
UTF8_string::UTF8_string(ucs = CONTINUE)
UTF8_string::UTF8_string(): utf = CONTINUE
Quad_QUOTE::done(1) called from LineInput.cc:712 , buffer = []

 '1 1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0'
fix pmode=statement list:
1 1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
 addr 0x14a8bb0
------------------- StatementList::fix() --
[0]1 1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
tokenize: input[44] is: «1 1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0»
  tokenize(44 chars) sees [tag TOK_NUMERIC «1»] 1 1 0 { {⍺∘.{|⍺-⍵+0J1}⍵} ...
tokenize_number(1 1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(43 chars) sees [tag TOK_SPACE « »]  1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ ...
  tokenize(42 chars) sees [tag TOK_NUMERIC «1»] 1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/  ...
tokenize_number(1 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(41 chars) sees [tag TOK_SPACE « »]  0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ { ...
  tokenize(40 chars) sees [tag TOK_NUMERIC «0»] 0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵ ...
tokenize_number(0 { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(39 chars) sees [tag TOK_SPACE « »]  { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/ ...
  tokenize(38 chars) sees [tag TOK_L_CURLY «{»] { {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳ ...
  tokenize(37 chars) sees [tag TOK_SPACE « »]  {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴ ...
  tokenize(36 chars) sees [tag TOK_L_CURLY «{»] {⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵ ...
  tokenize(35 chars) sees [tag TOK_SYMBOL «⍺»] ⍺∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵} ...
  tokenize(34 chars) sees [tag TOK_JOT «∘»] ∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨ ...
tokenize_function(∘.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(33 chars) sees [tag TOK_OPER2_INNER «.»] .{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ...
tokenize_function(.{|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(32 chars) sees [tag TOK_L_CURLY «{»] {|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺  ...
  tokenize(31 chars) sees [tag TOK_F12_STILE «|»] |⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵ ...
tokenize_function(|⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(30 chars) sees [tag TOK_SYMBOL «⍺»] ⍺-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} ...
  tokenize(29 chars) sees [tag TOK_F12_MINUS «-»] -⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵}  ...
tokenize_function(-⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(28 chars) sees [tag TOK_SYMBOL «⍵»] ⍵+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 ...
  tokenize(27 chars) sees [tag TOK_F12_PLUS «+»] +0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0  ...
tokenize_function(+0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(26 chars) sees [tag TOK_NUMERIC «0»] 0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 ...
tokenize_number(0J1}⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(23 chars) sees [tag TOK_R_CURLY «}»] }⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
  tokenize(22 chars) sees [tag TOK_SYMBOL «⍵»] ⍵}/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
  tokenize(21 chars) sees [tag TOK_R_CURLY «}»] }/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
  tokenize(20 chars) sees [tag TOK_OPER1_REDUCE «/»] / {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
tokenize_function(/ {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(19 chars) sees [tag TOK_SPACE « »]  {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
  tokenize(18 chars) sees [tag TOK_L_CURLY «{»] {⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
  tokenize(17 chars) sees [tag TOK_SYMBOL «⍵»] ⍵/⍳⍴⍵}¨⍺ ⍵} 0 1 0
  tokenize(16 chars) sees [tag TOK_OPER1_REDUCE «/»] /⍳⍴⍵}¨⍺ ⍵} 0 1 0
tokenize_function(/⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(15 chars) sees [tag TOK_F12_INDEX_OF «⍳»] ⍳⍴⍵}¨⍺ ⍵} 0 1 0
tokenize_function(⍳⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(14 chars) sees [tag TOK_F12_RHO «⍴»] ⍴⍵}¨⍺ ⍵} 0 1 0
tokenize_function(⍴⍵}¨⍺ ⍵} 0 1 0)
  tokenize(13 chars) sees [tag TOK_SYMBOL «⍵»] ⍵}¨⍺ ⍵} 0 1 0
  tokenize(12 chars) sees [tag TOK_R_CURLY «}»] }¨⍺ ⍵} 0 1 0
  tokenize(11 chars) sees [tag TOK_OPER1_EACH «¨»] ¨⍺ ⍵} 0 1 0
tokenize_function(¨⍺ ⍵} 0 1 0)
  tokenize(10 chars) sees [tag TOK_SYMBOL «⍺»] ⍺ ⍵} 0 1 0
  tokenize(9 chars) sees [tag TOK_SPACE « »]  ⍵} 0 1 0
  tokenize(8 chars) sees [tag TOK_SYMBOL «⍵»] ⍵} 0 1 0
  tokenize(7 chars) sees [tag TOK_R_CURLY «}»] } 0 1 0
  tokenize(6 chars) sees [tag TOK_SPACE « »]  0 1 0
  tokenize(5 chars) sees [tag TOK_NUMERIC «0»] 0 1 0
tokenize_number(0 1 0)
  tokenize(4 chars) sees [tag TOK_SPACE « »]  1 0
  tokenize(3 chars) sees [tag TOK_NUMERIC «1»] 1 0
tokenize_number(1 0)
  tokenize(2 chars) sees [tag TOK_SPACE « »]  0
  tokenize(1 chars) sees [tag TOK_NUMERIC «0»] 0
tokenize_number(0)
tokenize() done (no error)
parse 1 [33]: `INTEGER  `INTEGER  `INTEGER  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `- 
 `⍵  `+  `COMPLEX  `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  
`INTEGER  `INTEGER  `INTEGER  

parse 2 [33]: `INTEGER  `INTEGER  `INTEGER  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `- 
 `⍵  `+  `COMPLEX  `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  
`INTEGER  `INTEGER  `INTEGER  
collect_groups [33 token] in: `INTEGER  `INTEGER  `INTEGER  `{  `{  `⍺  `∘  `∘. 
 `{  `∣  `⍺  `-  `⍵  `+  `COMPLEX  `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  
`¨  `⍺  `⍵  `}  `INTEGER  `INTEGER  `INTEGER  
parse 3 [33]: `INTEGER  `INTEGER  `INTEGER  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `- 
 `⍵  `+  `COMPLEX  `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  
`INTEGER  `INTEGER  `INTEGER  
collect_constants [33 token] in: `INTEGER  `INTEGER  `INTEGER  `{  `{  `⍺  `∘  
`∘.  `{  `∣  `⍺  `-  `⍵  `+  `COMPLEX  `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  
`}  `¨  `⍺  `⍵  `}  `INTEGER  `INTEGER  `INTEGER  
create_value(600) tos[33]  pos 0 count 3 in:`INTEGER  `INTEGER  `INTEGER  `{  
`{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `COMPLEX  `}  `⍵  `}  `/  `{  `⍵  `/  
`⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `INTEGER  `INTEGER  `INTEGER  
new    0x14a13b0 at Value.icc:67
create_value [33 token] out: `VALUE3«≡⊏3⊐before align_dot(), COL_INFO = 1:0:1, 
this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `COMPLEX  `} 
 `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `INTEGER  `INTEGER  
`INTEGER  
create_value(610) tos[33]  pos 0 count 3 out:`VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `COMPLEX  `} 
 `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `INTEGER  `INTEGER  
`INTEGER  
create_value(600) tos[33]  pos 14 count 1 in:`VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `COMPLEX  `} 
 `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `INTEGER  `INTEGER  
`INTEGER  
new    0x14aa9f0 at Value.icc:53
create_value(610) tos[33]  pos 14 count 1 out:`VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1» 
 `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `INTEGER  `INTEGER 
 `INTEGER  
create_value(600) tos[33]  pos 30 count 3 in:`VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1» 
 `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `INTEGER  `INTEGER 
 `INTEGER  
new    0x14aae10 at Value.icc:67
create_value [33 token] out: `VALUE3«≡⊏3⊐before align_dot(), COL_INFO = 1:0:1, 
this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1» 
 `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `VALUE3«≡⊏3⊐before 
align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

0 1 0»  `VOID  `VOID  
create_value(610) tos[33]  pos 30 count 3 out:`VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1» 
 `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `VALUE3«≡⊏3⊐before 
align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

0 1 0»  `VOID  `VOID  
collect_constants [33 token] out: `VALUE3«≡⊏3⊐before align_dot(), COL_INFO = 
1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `VOID  `VOID  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1» 
 `}  `⍵  `}  `/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `VALUE3«≡⊏3⊐before 
align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

0 1 0»  `VOID  `VOID  
parse 4 [29]: `VALUE3«≡⊏3⊐before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1»  `}  `⍵  `}  
`/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

0 1 0»  
parse 5 [29]: `VALUE3«≡⊏3⊐before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1»  `}  `⍵  `}  
`/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

0 1 0»  
parse 6 [29]: `VALUE3«≡⊏3⊐before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `{  `{  `⍺  `∘  `∘.  `{  `∣  `⍺  `-  `⍵  `+  `VALUE3«0J1»  `}  `⍵  `}  
`/  `{  `⍵  `/  `⍳  `⍴  `⍵  `}  `¨  `⍺  `⍵  `}  `VALUE3«≡⊏3⊐before align_dot(), 
COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

0 1 0»  
[non-reverse 0] `VALUE3«≡⊏3⊐before align_dot(), COL_INFO = 1:0:1, this col = 
1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

0 1 0»  `}  `⍵  `⍺  `¨  `}  `⍵  `⍴  `⍳  `/  `⍵  `{  `/  `}  `⍵  `}  
`VALUE3«0J1»  `+  `⍵  `-  `⍺  `∣  `{  `∘.  `∘  `⍺  `{  `{  `VALUE3«≡⊏3⊐before 
align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│1│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

before align_dot(), COL_INFO = 1:0:1, this col = 1:0:1
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

after align_dot()
┌─┐
│0│
└─┘  flags=0x10  ilen=1  flen=0  rlen=1

1 1 0»  `ENDL  
UCS_string::UCS_string(): utf = λ←
UCS_string::UCS_string(): ucs = λ←
UCS_string::UCS_string(): utf = λ←
UCS_string::UCS_string(): ucs = λ←
UCS_string::UCS_string(): utf = ⍺ 
UCS_string::UCS_string(): ucs = ⍺ 
UCS_string::UCS_string(): utf =  ⍵
UCS_string::UCS_string(): ucs =  ⍵
UTF8_string::UTF8_string(ucs = λ)
UTF8_string::UTF8_string(): utf = λ
[non-reverse 0] `⍵  `⍺  `¨  `}  `⍵  `⍴  `⍳  `/  `⍵  `{  `/  `}  `⍵  `}  
`VALUE3«0J1»  `+  `⍵  `-  `⍺  `∣  `{  `∘.  `∘  `⍺  `{  `←  `λ  `ENDL  
`RETURN_SYMBOL  `ENDL  
UCS_string::UCS_string(): utf = λ←
UCS_string::UCS_string(): ucs = λ←
UCS_string::UCS_string(): utf = λ←
UCS_string::UCS_string(): ucs = λ←
UCS_string::UCS_string(): utf =  ⍵
UCS_string::UCS_string(): ucs =  ⍵
UTF8_string::UTF8_string(ucs = λ)
UTF8_string::UTF8_string(): utf = λ
[non-reverse 0] `⍵  `⍴  `⍳  `/  `⍵  `←  `λ  `ENDL  `RETURN_SYMBOL  `ENDL  
UCS_string::UCS_string(): utf = λ←
UCS_string::UCS_string(): ucs = λ←
UCS_string::UCS_string(): utf = λ←
UCS_string::UCS_string(): ucs = λ←
UCS_string::UCS_string(): utf = ⍺ 
UCS_string::UCS_string(): ucs = ⍺ 
UCS_string::UCS_string(): utf =  ⍵
UCS_string::UCS_string(): ucs =  ⍵
UTF8_string::UTF8_string(ucs = λ)
UTF8_string::UTF8_string(): utf = λ
[non-reverse 0] `⍵  `}  `VALUE3«0J1»  `+  `⍵  `-  `⍺  `∣  `{  `∘.  `∘  `⍺  `←  
`λ  `ENDL  `RETURN_SYMBOL  `ENDL  
UCS_string::UCS_string(): utf = λ←
UCS_string::UCS_string(): ucs = λ←
copying:             '0' at Executable.cc:669
tidx:                '2' at Executable.cc:669

----------------------------------------
-- Stack trace at Executable.cc:669
----------------------------------------
0x7fade22f4b45 __libc_start_main
0x43eea5  main
0x57ac35   Workspace::immediate_execution(bool)
0x48e45a    Command::process_line()
0x48e4dc     Command::do_APL_expression(UCS_string&)
0x49ef29      StatementList::fix(UCS_string const&, char const*)
0x49e4d7       Executable::setup_lambdas()
0x49d7a2        Executable::setup_one_lambda(long)
0x56675d         UserFunction::UserFunction(Fun_signature, UCS_string const&, 
UCS_string const&, Token_string const&)
0x49e4d7          Executable::setup_lambdas()
0x49d7a2           Executable::setup_one_lambda(long)
0x56675d            UserFunction::UserFunction(Fun_signature, UCS_string 
const&, UCS_string const&, Token_string const&)
0x49e4d7             Executable::setup_lambdas()
0x49d76d              Executable::setup_one_lambda(long)
0x49ba16               Executable::extract_lambda_text(Fun_signature) const
========================================

Reply via email to