Without a tool to look closer at what the names are you begin by seeing a
lot of names and you have no idea of what is behind the name.
Is it a verb or a noun, what is its shape and size and so on.

If you have written it yourself there may be some structure to what the
names are depending on caps or the name of the locale it is in.

In case of a C program it can have been a big windows system brought
together from many dos modules.

The name of utilities that worked (seemingly) well in dos when it is opened
and closed when called may be creating memory leaks when it is open all the
time.

Same goes for names in one module may shadow another operation with the same
name in another module that comes before in the path which has similarities
in paths searches in J so what I do when I come in touch with such systems
is to spend some time putting asserts all over the place because scanning
through one locale when the real problem lies in another module/locale is
and will be fruitless.

It is great to be able to separate names in locales but if many locales are
involved then the paths need to be well defined and understood as well.

For many years I regularly go through the locale lab to remind myself about
what there is there and also going through the OOP labs and it is a good way
of keeping the functionality fresh.

Even so there is always a good thing to get new tools and scan through
utilities.


2011/10/2 Ian Clark <[email protected]>

> Sorry, misread you.
>
>
> 2011/10/2 Björn Helgason <[email protected]>:
> > I see we agree.
> >
> > You do describe a tool and I said without a tool
> >
> > 2011/10/2 Ian Clark <[email protected]>
> >
> >> > Searching unknown locales/objects directly is a very difficult and
> time
> >> > consuming task and it is good to be able to do so but having that as
> the
> >> > only tool is like diving in muddy water.
> >>
> >> Sorry, I disagree. With the right tool (a browser) the water's
> >> crystal-clear and it's quick and easy. So easy it's become my tool of
> >> choice, when perhaps I ought to be editing scripts directly. It's
> >> brilliant for unlocking the secrets of j602 JWD.
> >>
> >> Oleg wrote such a browser back in 2007. Cobrowse.
> >> http://www.jsoftware.com/jwiki/Addons/gui/util
> >> If I'd known about it soon enough (its designation: class browser,
> >> didn't click with me) I wouldn't have bothered writing my own. But
> >> it's allowed me to incorporate my own pet functionality.
> >>
> >>
> >> 2011/10/2 Björn Helgason <[email protected]>:
> >> > Years of searching through other peoples codes of uncertain workings
> has
> >> > made me appreciate search tools and I love to put asserts into the
> code
> >> so I
> >> > know the values involved at execution time.
> >> >
> >> > Does not matter if it is C code or J and scripts are basically where
> you
> >> > find the functions/verbs/names and then pepper the code with asserts
> and
> >> > then execute the system.
> >> >
> >> > Very often you find that the fault in broken code happens because of
> >> wrong
> >> > operation executed long before the brake occurs but an assert in the
> >> right
> >> > place or all over the place will give you the cause.
> >> >
> >> > Searching unknown locales/objects directly is a very difficult and
> time
> >> > consuming task and it is good to be able to do so but having that as
> the
> >> > only tool is like diving in muddy water.
> >> >
> >> > 2011/10/2 Ian Clark <[email protected]>
> >> >
> >> >> > the same spirit of decommting workspace in flavor of scripts, that
> >> >> searching
> >> >> > names inside scripts is preferable to searching names inside loaded
> >> >> locales.
> >> >>
> >> >> Habits of a lifetime, Bill. APL has induced an occupational deformity
> >> >> in me. Basically I'd agree with you, as advice to beginners.
> >> >>
> >> >> As a callow youth, they taught me to fly planes. Experienced pilots
> >> >> hated the idea of fly-by-wire. They wanted to know there was a direct
> >> >> mechanical linkage from the joystick to the control surfaces, even if
> >> >> (like power steering) it's only there for reassurance and can't
> >> >> feasibly be used on its own. To me the "workspace" debate in J has
> >> >> similarities.
> >> >>
> >> >> A lot depends on whether you're browsing someone else's code, as you
> >> >> find it in your system, or writing your own for release. If the
> >> >> latter, I'd say always work on the script itself. When all else
> fails,
> >> >> only then work on what got squirted into memory.
> >> >>
> >> >> The fact you don't have a script in APL is not a defence of workspace
> >> >> technology but a tribute to the stability of the full-screen (del)
> >> >> editor -- agonisingly evolved over decades. Just think back to APLSV
> >> >> on the early 3270 screens.
> >> >>
> >> >> But I shouldn't go digging up old bones.
> >> >>
> >> >>
> >> >> On Sun, Oct 2, 2011 at 5:51 AM, bill lam <[email protected]>
> wrote:
> >> >> > I didn't know this verb and have never used it before.  However I
> >> guess,
> >> >> in
> >> >> > the same spirit of decommting workspace in flavor of scripts, that
> >> >> searching
> >> >> > names inside scripts is preferable to searching names inside loaded
> >> >> locales.  For
> >> >> > example use FIF to search 'deb' in global names should return the
> same
> >> >> (or
> >> >> > more) definitions as that returing from whs.
> >> >> >
> >> >> > That said, I rarely use FIF by now because I seldom use ide either.
> >> >> >
> >> >> > ymmv
> >> >> >
> >> >> >> To sniff over any new word I've discovered, I make heavy use of my
> >> >> home-brewed:
> >> >> >>    whs=: (>@whichlocales) ; whichscript
> >> >> >>
> >> >> >> used like this:
> >> >> >>    whs'deb'
> >> >> >> ┌──────────────────────────────────────────┬─┬─┬─┬────┬────┐
> >> >> >> │/Applications/j602/system/main/strings.ijs│z│z│j│jfiw│jijs│
> >> >> >> └──────────────────────────────────────────┴─┴─┴─┴────┴────┘
> >> >> >>
> >> >> >> ...from which you see "deb" resides all over the place (in
> identical
> >> >> >> copies, fortunately :)
> >> >> >>
> >> >> >> I find "whs" egregiously useful. Most of the bugs I encounter come
> >> >> >> from what is [not] loaded, and where it is [from].
> >> >> >>
> >> >> >> The verbs it needs: whichlocales, whichscript, along with:
> >> >> >> listnameswithprefix (just as useful) can be copied from:
> >> >> >> http://www.jsoftware.com/jwiki/Phrases/Names . It happens they
> are
> >> >> >> *not* part of stdlib. I think they should be. (@Ric; how about
> it?)
> >> >> >
> >> >> > --
> >> >> > regards,
> >> >> > ====================================================
> >> >> > GPG key 1024D/4434BAB3 2008-08-24
> >> >> > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> >> >> >
> ----------------------------------------------------------------------
> >> >> > For information about J forums see
> >> http://www.jsoftware.com/forums.htm
> >> >>
> ----------------------------------------------------------------------
> >> >> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>
> >> >
> >> >
> >> >
> >> > --
> >> > Björn Helgason, Verkfræðingur
> >> > Fornustekkum II
> >> > 781 Hornafirði,
> >> > t-póst: [email protected]
> >> > gsm: +3546985532
> >> > twitter: @flugfiskur
> >> > http://groups.google.com/group/J-Programming
> >> >
> >> >
> >> > Tæknikunnátta höndlar hið flókna, sköpunargáfa er meistari
> einfaldleikans
> >> >
> >> > góður kennari getur stigið á tær án þess að glansinn fari af skónum
> >> >          /|_      .-----------------------------------.
> >> >         ,'  .\  /  | Með léttri lund verður        |
> >> >     ,--'    _,'   | Dagurinn í dag                     |
> >> >    /       /       | Enn betri en gærdagurinn  |
> >> >   (   -.  |        `-----------------------------------'
> >> >   |     ) |         (\_ _/)
> >> >  (`-.  '--.)       (='.'=)   ♖♘♗♕♔♙
> >> >   `. )----'        (")_(") ☃☠
> >> > ----------------------------------------------------------------------
> >> > For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> ----------------------------------------------------------------------
> >> For information about J forums see http://www.jsoftware.com/forums.htm
> >>
> >
> >
> >
> > --
> > Björn Helgason, Verkfræðingur
> > Fornustekkum II
> > 781 Hornafirði,
> > t-póst: [email protected]
> > gsm: +3546985532
> > twitter: @flugfiskur
> > http://groups.google.com/group/J-Programming
> >
> >
> > Tæknikunnátta höndlar hið flókna, sköpunargáfa er meistari einfaldleikans
> >
> > góður kennari getur stigið á tær án þess að glansinn fari af skónum
> >          /|_      .-----------------------------------.
> >         ,'  .\  /  | Með léttri lund verður        |
> >     ,--'    _,'   | Dagurinn í dag                     |
> >    /       /       | Enn betri en gærdagurinn  |
> >   (   -.  |        `-----------------------------------'
> >   |     ) |         (\_ _/)
> >  (`-.  '--.)       (='.'=)   ♖♘♗♕♔♙
> >   `. )----'        (")_(") ☃☠
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>



-- 
Björn Helgason, Verkfræðingur
Fornustekkum II
781 Hornafirði,
t-póst: [email protected]
gsm: +3546985532
twitter: @flugfiskur
http://groups.google.com/group/J-Programming


Tæknikunnátta höndlar hið flókna, sköpunargáfa er meistari einfaldleikans

góður kennari getur stigið á tær án þess að glansinn fari af skónum
          /|_      .-----------------------------------.
         ,'  .\  /  | Með léttri lund verður        |
     ,--'    _,'   | Dagurinn í dag                     |
    /       /       | Enn betri en gærdagurinn  |
   (   -.  |        `-----------------------------------'
   |     ) |         (\_ _/)
  (`-.  '--.)       (='.'=)   ♖♘♗♕♔♙
   `. )----'        (")_(") ☃☠
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to