[Jprogramming] index error on load (but works in console)
bill lam
bbill.lam at gmail.com
Mon Apr 9 13:29:26 HKT 2007
If I were you, I would use debug facility to test for y. or tallies in the verb,
insert a break point into tally_rightpairs
tally_rightpairs =: 3 : 0
[:0
+/"1 (2 3 {"1 ((i.#y.) { y.)){ tallies
)
invoke debug by ctrl-k, and then load the script, when it stops at the break
point, type y. or $y. or tallies in the ijx.
Tracy Harms wrote:
> I've been working on the puzzle from Dr. Dobbs that
> Randy MacDonald announced here:
> http://www.jsoftware.com/pipermail/chat/2007-April/000467.html
>
> I'm still not ready for full-fledged spoilers, but I
> am asking for help getting past one particular error
> condition. The problem is that an index error is
> reported when I try to load the script, but it seems
> fine when I run it in the J console.
>
> My approach to solving the puzzle is:
>
> reportstates same_chars same_tallies 4 comb 50
>
> I've only developed this as deep as verb same_tallies,
> which is:
>
> same_tallies =: ((tally_leftpairs = tally_rightpairs)
> y.) # y.
>
> Here are the component verbs:
>
> tally_leftpairs =: 3 : '+/"1 (0 1 {"1 ((i.#y.) { y.))
> { tallies'
> tally_rightpairs =: 3 : '+/"1 (2 3 {"1 ((i.#y.) { y.))
> { tallies'
>
> Now I'll show testing from a J session, ending with an
> error on attempt to load the same verb that functioned
> perfectly when entered in the console:
>
> twocomb =: 0 1 11 14 ,: 4 5 6 20
> twocomb
> 0 1 11 14
> 4 5 6 20
> twocomb { states
> +----------+--------+-----------+-------------+
> |Alabama |Alaska |Idaho |Iowa |
> +----------+--------+-----------+-------------+
> |California|Colorado|Connecticut|Massachusetts|
> +----------+--------+-----------+-------------+
> twocomb { tallies
> 7 6 5 4
> 10 8 11 13
> (0 1 {"1 ((i.#twocomb) { twocomb)) { tallies
> 7 6
> 10 8
> (2 3 {"1 ((i.#twocomb) { twocomb)) { tallies
> 5 4
> 11 13
> +/"1 (0 1 {"1 ((i.#twocomb) { twocomb)) { tallies
> 13 18
> +/"1 (2 3 {"1 ((i.#twocomb) { twocomb)) { tallies
> 9 24
> load 'c:\j504\user\miscellany\statespzl2.ijs'
> |index error: tally_rightpairs
> | +/"1(2 3 {"1((i.#y.){y.)){tallies
>
> No error was signaled for the line before it, which
> differed only in the values of the pairing noun:
>
> tally_leftpairs =: 3 : '+/"1 (0 1 {"1 ((i.#y.) { y.))
> { tallies'
> tally_rightpairs =: 3 : '+/"1 (2 3 {"1 ((i.#y.) { y.))
> { tallies'
>
> I'm at a loss as to what needs to be fixed, here.
>
> --
> Tracy B. Harms
>
> It is the central thesis of this book that the descriptive
> and analytic power of an adequate programming language amply
> repays the considerable effort required for its mastery.
> Kenneth E. Iverson
> A Programming Language, 1962
>
>
>
> ____________________________________________________________________________________
> It's here! Your new message!
> Get new email alerts with the free Yahoo! Toolbar.
> http://tools.search.yahoo.com/toolbar/features/mail/
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
--
regards,
bill
More information about the Programming
mailing list