'j' and (,'j') are both arrays but the former is a scalar and the latter is a vector.
I've taken to enforcing vectors as a defensive measure when I define a list like this: terms=. ,&.>'3';'6';'9';'12';'12p' . You may want to take a look at the slides from my talk at http://www.jsoftware.com/jwiki/DevonMcCormick/FunctionalJ , particularly starting with "Example 5" - which briefly notes how scalars differ from other kinds of arrays - and the following sections about "precedence" (order of operations). I'm not sure how useful the slides are on their own but they do refer to a couple of issues you've raised recently. Regards, Devon On Thu, Sep 29, 2011 at 5:26 PM, Raul Miller <[email protected]> wrote: > On Thu, Sep 29, 2011 at 5:21 PM, Christopher McIntosh > <[email protected]> wrote: > > I have a noun, BASE_LIBS, defined as: > > > > BASE_LIBS =: > 'base';'ctag';'j';'jadetag';'jadecompare';'jregex';'jtask';'z' > > Try: > BASE_LIBS =: ;:'base ctag j jadetag jadecompare jregex jtask z' > > The problem is that 'j' and 'z' are characters and not lists of characters. > > You could also use (,'j') and (,'z') instead, in your original sentence. > > -- > Raul > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > -- Devon McCormick, CFA ^me^ at acm. org is my preferred e-mail ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
