From: Daniel T. on 7 May 2010 10:16 Nick Keighley <nick_keighley_nospam(a)hotmail.com> wrote: > On 6 May, 08:50, Keith Thompson <ks...(a)mib.org> wrote: > > > The original problem is to traverse a 3-dimensional array. �A triple > > nested loop is the most obvious way to do that. �There might be > > some advantages in converting it to a single loop, but clarity > > isn't one of them, at least in this case. > > I considered submitting a single loop solution as a joke. It never > crossed my mind someone would seriusly propose it! I seriously proposed it. I think it is the best solution for the job (not your code specifically of course, but the idea of a single loop traversing a single container.)
From: Keith Thompson on 7 May 2010 11:56 "Daniel T." <daniel_t(a)earthlink.net> writes: > Nick Keighley <nick_keighley_nospam(a)hotmail.com> wrote: >> On 6 May, 08:50, Keith Thompson <ks...(a)mib.org> wrote: >> >> > The original problem is to traverse a 3-dimensional array. A triple >> > nested loop is the most obvious way to do that. There might be >> > some advantages in converting it to a single loop, but clarity >> > isn't one of them, at least in this case. >> >> I considered submitting a single loop solution as a joke. It never >> crossed my mind someone would seriusly propose it! > > I seriously proposed it. I think it is the best solution for the job > (not your code specifically of course, but the idea of a single loop > traversing a single container.) Can a container contain another container, which in turn contains another container? If so, isn't a nested loop the most natural way to traverse the elements? -- Keith Thompson (The_Other_Keith) kst-u(a)mib.org <http://www.ghoti.net/~kst> Nokia "We must do something. This is something. Therefore, we must do this." -- Antony Jay and Jonathan Lynn, "Yes Minister"
From: Robert Redelmeier on 7 May 2010 13:42 In alt.lang.asm [FUp set] Keith Thompson <kst-u(a)mib.org> wrote in part: > "Daniel T." <daniel_t(a)earthlink.net> writes: >> I seriously proposed it. I think it is the best solution >> for the job (not your code specifically of course, but >> the idea of a single loop traversing a single container.) > > Can a container contain another container, which in turn > contains another container? If so, isn't a nested loop > the most natural way to traverse the elements? Natural, perhaps. Not necessarily the most efficient. Index calculations can be a significant component of multiply nested structures [multi-d arrays]. For many operations, the order of processing is unimportant so why not rip through it in memory order rather than a big game of RAM hopscotch? -- Robert
From: Daniel T. on 7 May 2010 14:33 Keith Thompson <kst-u(a)mib.org> wrote: > "Daniel T." <daniel_t(a)earthlink.net> writes: > > Nick Keighley <nick_keighley_nospam(a)hotmail.com> wrote: > > > On 6 May, 08:50, Keith Thompson <ks...(a)mib.org> wrote: > > > > > > > The original problem is to traverse a 3-dimensional array. A triple > > > > nested loop is the most obvious way to do that. There might be > > > > some advantages in converting it to a single loop, but clarity > > > > isn't one of them, at least in this case. > > > > > > I considered submitting a single loop solution as a joke. It never > > > crossed my mind someone would seriusly propose it! > > > > I seriously proposed it. I think it is the best solution for the job > > (not your code specifically of course, but the idea of a single loop > > traversing a single container.) > > Can a container contain another container, which in turn contains > another container? If so, isn't a nested loop the most natural way to > traverse the elements? Then you would need an infinite number of find functions, one for each dimension count. (i.e., a find for 1D arrays, a find for 2D arrays, a find for 3D arrays, a find for 4D arrays, etc.) That's silly. http://en.wikipedia.org/wiki/Zero_One_Infinity
From: wolfgang kern on 7 May 2010 14:32
Nathan tried to convince HLL-folks :) .... > Please pardon any butchering of C++ syntax in my pseudo snippet above > -- I totally lack any C++ training. But we alt.lang.asm folk *do* > have an inkling of how to actually code our way out of a paper bag... > I do believe. Ok Nate, we had enough discussions on this matter since HLLs entered our progamming world ... We better give up arguing and let the 'faster' programmers be proud of their 'maintainable/foolproof-readable' sources which are awful detours with "abstraction layers" while the few hardware freaks like me work on "really existing things" :) I don't like to start a war of flames or to pick on any programmers choice for HLL. But there might be a good reason for Asm-groups are apart from c/c+-/etc..-groups. __ wolfgang I don't 'believe', but I 'know !' (now at least how my code affects any given hardware) |