Paul wrote:

>  But for ss I got this:
>    5!:5<'ss' (225 0 0 0 32 0 0 0 8 0 ...

This isn't a bug.  Or, it could be construed as a bug, but not the one you're 
thinking of.  

The result of  5!:5<'ss'  is indeed the linear representation of a verb.  What 
you're seeing is essentially the same behavior as:

           13 : ' ''blahblah'' foo y  '
        'blahblah' foo ]

or,
        
           13 :  ' (+/~i.10)  *  y '
        (10 10$0 1 2 3 4 5 6 7 8 9 1 ....

or, more germane:
           
           13 :  ' (a. i. 3!:1 ''stuff'';''more'';98;a:) ] y'
        225 0 0 0 32 0 0 0 4 0 0 0 1 0 ..
   
That is, all those numbers are the lineral representation of the NOUN within 
your verb.  

The bug, if you want to call it that, is that  13 :  produced a functional 
verb, even though  s:  is not functional.  That is, given the same inputs  s:  
can produce different outputs;  it's hidden input is the symbol table.

But I think if you're using  13 :  you're specifically requesting a functional 
verb; after all, that's what tacit means.  So I don't think ignoring the 
non-functional-ness of  s:  is any more a bug than ignoring the 
non-functional-ness of  GLOBAL  in: 

           GLOBAL  =:  42
           f       =:  13 : 'GLOBAL * y'
        
           f 3
        126
        
           GLOBAL  =:  100
        
           f 3
        126
        
           f
        42 * ]

Anyway, to answer your implicit question,  ss  can be written tacitly thus:

           ss =:  ([: 3!:1 0: s: 10"_) 1!:2 < 
   
-Dan
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to