Right. My opinion is that grade with an array of lists should do lexical
ordering. Given the fact that grade on depth-2 arrays are not specified by
the standard anyway, it should be safe.

Regards,
Elias


On 8 July 2014 12:51, David B. Lamkins <dlamk...@gmail.com> wrote:

> I think it'd be really handy if that expression did what we'd like it to
> do. I guess it'd fall under the category of "conforming extension".
>
> Neither IBM nor ISO APL define a behavior for dyadic grade with other
> than a character matrix as the right argument.
>
> On Tue, 2014-07-08 at 12:40 +0800, Elias Mårtenson wrote:
> > To clarify, I tried the following:
> >
> >
> >       (⎕UCS¨⍳1114111) ⍋ 'foo' 'bar' 'test'
> > DOMAIN ERROR
> >       (⎕UCS¨⍳1114111)⍋'foo' 'bar' 'test'
> >       ^              ^
> >
> >
> > Note of course that this is pretty insane, and there should be an
> > easier way to do this.
> >
> >
> > Regards,
> > Elias
> >
> >
> > On 8 July 2014 12:38, Elias Mårtenson <loke...@gmail.com> wrote:
> >         Right, but just having a "plain" collating order for Unicode
> >         would require me to pass a million-element array
> >         (⎕UCS¨⍳1114111) as left argument to grade.
> >
> >
> >         That said, I can't even get dyadic grade to work at all, but
> >         that's a separate issue.
> >
> >
> >         Regards,
> >         Elias
> >
> >
> >         On 8 July 2014 12:27, David B. Lamkins <dlamk...@gmail.com>
> >         wrote:
> >                 The problem with generating a permutation vector for
> >                 an "arbitrary"
> >                 Unicode string is still a problems of collating order.
> >                 There is no
> >                 inherent order in Unicode; someone has to decide on
> >                 what makes sense as
> >                 a collating order for the subset of code points used
> >                 by the application.
> >
> >                 You should use ⎕ucs with a vector of code points to
> >                 define your own
> >                 collating order for Unicode; any code points not
> >                 explicitly specified in
> >                 the collating order will sort to the end.
> >
> >                 For example (and this is an easy case) you can use
> >                 this to specify a
> >                 default collating order (based upon ordinal value of
> >                 the code points
> >                 themselves) for the 8-bit ASCII subset:
> >
> >                 ⎕ucs ⎕io-⍨⍳256
> >
> >
> >
> >                 On Tue, 2014-07-08 at 12:09 +0800, Elias Mårtenson
> >                 wrote:
> >                 > Dyadic grade doesn't make much sense in the context
> >                 of Unicode though.
> >                 > How do you grade an arbitrary Unicode string?
> >                 >
> >                 >
> >                 > That issue is there even if we completely disregard
> >                 all the
> >                 > other Unicode-related collating issues.
> >                 >
> >                 >
> >                 > Regards,
> >                 > Elias
> >                 >
> >                 >
> >                 > On 8 July 2014 12:00, David B. Lamkins
> >                 <dlamk...@gmail.com> wrote:
> >                 >         Check my follow-up post.
> >                 >
> >                 >         I'm fairly certain that the issue is whether
> >                 monadic grade
> >                 >         applied to a
> >                 >         list of strings should do anything but
> >                 signal a domain error.
> >                 >         The ISO
> >                 >         spec says that monadic grade is defined only
> >                 on numeric
> >                 >         arguments.
> >                 >
> >                 >         My test case appears to have monadic grade
> >                 treating strings as
> >                 >         if they
> >                 >         encode numbers in a sufficiently large base.
> >                 >
> >                 >         If you want to sort strings, use dyadic
> >                 grade. The left
> >                 >         argument
> >                 >         specifies a collating sequence.
> >                 >
> >                 >         On Tue, 2014-07-08 at 11:43 +0800, Elias
> >                 Mårtenson wrote:
> >                 >         > Ordering by size first makes very little
> >                 sense to me. It
> >                 >         makes it very
> >                 >         > hard to sort any list of strings.
> >                 >         >
> >                 >         >
> >                 >         > I was hoping that the following would have
> >                 done so, but it
> >                 >         also
> >                 >         > suffers from the "length first" issue:
> >                 >         >
> >                 >         >
> >                 >         >       z[⍋ ⎕UCS¨ z←'aa' 'xx' 'aaa' 'xxx']
> >                 >         >  aa xx aaa xxx
> >                 >         >
> >                 >         >
> >                 >         > What is the proper way to sort strings
> >                 given the existing
> >                 >         semantics of
> >                 >         > grade?
> >                 >         >
> >                 >         >
> >                 >         > Regards,
> >                 >         > Elias
> >                 >         >
> >                 >         >
> >                 >         > On 8 July 2014 02:34, David Lamkins
> >                 <da...@lamkins.net>
> >                 >         wrote:
> >                 >         >         Looking at the spec, it seems that
> >                 monadic grade is
> >                 >         defined
> >                 >         >         only for numeric data.
> >                 >         >
> >                 >         >
> >                 >         >         That leaves open the question of
> >                 whether my example
> >                 >         should
> >                 >         >         have signaled a domain error.
> >                 >         >
> >                 >         >
> >                 >         >
> >                 >         >         On Mon, Jul 7, 2014 at 11:25 AM,
> >                 David Lamkins
> >                 >         >         <da...@lamkins.net> wrote:
> >                 >         >                 Given a list of character
> >                 vectors (and
> >                 >         scalars), grade
> >                 >         >                 appears to generate the
> >                 permutation vector
> >                 >         first by
> >                 >         >                 length then by content.
> >                 >         >
> >                 >         >                       ⍋'aaa' 'xx' 'y'
> >                 'bbb' 'cc'
> >                 >         >                 3 5 2 1 4
> >                 >         >
> >                 >         >
> >                 >         >                 This seems
> >                 counterintuitive. It seems as if
> >                 >         ⍋ treats
> >                 >         >                 character strings like
> >                 numbers. Is this a
> >                 >         bug?
> >                 >         >
> >                 >         >                 --
> >                 >         >                 "The secret to creativity
> >                 is knowing how to
> >                 >         hide your
> >                 >         >                 sources."
> >                 >         >                    Albert Einstein
> >                 >         >
> >                 >         >
> >                 >         >
> >                 http://soundcloud.com/davidlamkins
> >                 >         >
> >                 http://reverbnation.com/lamkins
> >                 >         >
> >                 http://reverbnation.com/lcw
> >                 >         >                 http://lamkins-guitar.com/
> >                 >         >                 http://lamkins.net/
> >                 >         >
> >                 http://successful-lisp.com/
> >                 >         >
> >                 >         >
> >                 >         >
> >                 >         >         --
> >                 >         >         "The secret to creativity is
> >                 knowing how to hide
> >                 >         your
> >                 >         >         sources."
> >                 >         >            Albert Einstein
> >                 >         >
> >                 >         >
> >                 >         >         http://soundcloud.com/davidlamkins
> >                 >         >         http://reverbnation.com/lamkins
> >                 >         >         http://reverbnation.com/lcw
> >                 >         >         http://lamkins-guitar.com/
> >                 >         >         http://lamkins.net/
> >                 >         >         http://successful-lisp.com/
> >                 >         >
> >                 >         >
> >                 >
> >                 >
> >                 >
> >                 >
> >                 >
> >
> >
> >
> >
> >
> >
> >
>
>
>

Reply via email to