Does enumeration designed to work only with symbols in Q?

/ e. g., it does not seem to work for chars:q)a:"abcdefghijklmnopqrstuvwxyz"q)a"abcdefghijklmnopqrstuvwxyz"q)a$"helloworld"k){$[|/(#v)in r:(v:!. x)?y;'cast;x!r]}'char?char"helloworld"q))\q)/ e. g., it does not seem to work for strings either:q)c:("abcd";"hello";enlist "a";"dict")q)c"abcd""hello","a""dict"q)c$"abcd"k){$[|/(#v)in r:(v:!. x)?y;'cast;x!r]}'type!:("abcd";"hello";,"a";"dict")q))\/ e. g., it does work for symbols:q)l:$/:"a quick brown fox jumps over the lazy dog"q)la``quick``brown``fox``jumps``overt`h`elazy``dogq)h:distinct lq)haq`u`i`c`k`b`r`o`w`n`f`x`j`m`p`s`v`e`t`h`l`z`y`d`gq)`h$`w`h$`wq)`h$`$/:"hello world"`h$`h`e`l`l`oworld

enumeration only works with symbols.On Dec 1, 9:40?pm, GH <yzg…> wrote:> / e. g., it does not seem to work for chars:> q)a:“abcdefghijklmnopqrstuvwxyz”> q)a> “abcdefghijklmnopqrstuvwxyz”> q)a$"helloworld"&gt; k){$[|/(#v)in r:(v:!. x)?y;'cast;x!r]}> 'char> ?> char&gt; "helloworld"&gt; q))\&gt; q)&gt;&gt; / e. g., it does not seem to work for strings either:&gt; q)c:("abcd";"hello";enlist "a";"dict")&gt; q)c&gt; "abcd"&gt; "hello"&gt; ,"a"&gt; "dict"&gt; q)c$“abcd”> k){$[|/(#v)in r:(v:!. x)?y;'cast;x!r]}&gt; 'type&gt; !:&gt; ("abcd";"hello";,"a";"dict")&gt; q))\&gt;&gt; / e. g., it does work for symbols:&gt; q)l:$/:“a quick brown fox jumps over the lazy dog”> q)l> a``quick``brown``fox``jumps``overt`h`elazy``dog&gt; q)h:distinct l&gt; q)h&gt; aq`u`i`c`k`b`r`o`w`n`f`x`j`m`p`s`v`e`t`h`l`z`y`d`g&gt; q)`h$`w&gt; `h$`w&gt; q)`h$`$/:"hello world"&gt; `h$`h`e`l`l`oworld</yzg…>

Thanks for the clarification.On Dec 2, 3:57?pm, aka_magnus <niall…> wrote:> enumeration only works with symbols.>> On Dec 1, 9:40?pm, GH <yzg…> wrote:>> > / e. g., it does not seem to work for chars:> > q)a:“abcdefghijklmnopqrstuvwxyz”> > q)a> > “abcdefghijklmnopqrstuvwxyz”> > q)a$"helloworld"&gt; &gt; k){$[|/(#v)in r:(v:!. x)?y;'cast;x!r]}> > 'char> > ?> > char&gt; &gt; "helloworld"&gt; &gt; q))\&gt; &gt; q)&gt;&gt; &gt; / e. g., it does not seem to work for strings either:&gt; &gt; q)c:("abcd";"hello";enlist "a";"dict")&gt; &gt; q)c&gt; &gt; "abcd"&gt; &gt; "hello"&gt; &gt; ,"a"&gt; &gt; "dict"&gt; &gt; q)c$“abcd”> > k){$[|/(#v)in r:(v:!. x)?y;'cast;x!r]}&gt; &gt; 'type&gt; &gt; !:&gt; &gt; ("abcd";"hello";,"a";"dict")&gt; &gt; q))\&gt;&gt; &gt; / e. g., it does work for symbols:&gt; &gt; q)l:$/:“a quick brown fox jumps over the lazy dog”> > q)l> > a``quick``brown``fox``jumps``overt`h`elazy``dog&gt; &gt; q)h:distinct l&gt; &gt; q)h&gt; &gt; aq`u`i`c`k`b`r`o`w`n`f`x`j`m`p`s`v`e`t`h`l`z`y`d`g&gt; &gt; q)`h$`w&gt; &gt; `h$`w&gt; &gt; q)`h$`$/:"hello world"&gt; &gt; `h$`h`e`l`l`oworld</yzg…></niall…>

you can also enumerate on a keyed table for foreign keying
q)t:([a:“f”$1,2,3];b:1,2,3)
q)t1:(a:10?“f”$1,2,3;c:10?1) q)update t$a from t1 t1
q)show meta t1

c t f a
a f t
c s
q)select a,a.b,c from t1 where c=`j
a b c

1 1 j
1 1 j

but for vectors/atoms, only symbol types.