Actually, =. sometimes assign globally.
http://www.jsoftware.com/help/dictionary/d001.htm says "The copula is
used to assign a referent to a name, as in a=:3 and in sum=:+/ . The
copula =. is local as discussed under Explicit Definition (:), and =:
is global, except that global assignment to a local name is not
permitted and an assignment to a locative is always global."

That's a hint...

Anyways, if you are not in a function definition it uses the name you
are assigning to as a name in the current locale.

Note that hypothetical J implementations might throw an error for
name=. value where name is not a locative and is also not local.  But
currently no such implementations exist (that I know of).

-- 
Raul


On Thu, Apr 4, 2013 at 10:42 PM, Neill Robson <[email protected]> wrote:
> Greg, when you define a variable with =. rather than =: it will be defined
> locally, as in only within the verb or script that you write it in. I
> believe that if you define a variable with =., say, at the top of an ijs,
> the variable will be defined for every verb and action within the script,
> but not in the ijx window; if the variable is defined with =. within a verb
> within an ijs, then the variable will only be recognized within the verb,
> and not within others defined in the same ijs.
> However, I am not aware of any way to "unset" variables (though there may
> be a valid way) other than by declaring them equal to i. 0 0 or ' ' or some
> other null phrase.
>
>
> On Thu, Apr 4, 2013 at 10:29 PM, Greg Borota <[email protected]> wrote:
>
>> I think if you put this on top of your script file, it will always work
>> (before any other code might have a chance to load some other script).
>> scriptPath=.<_1{4!:3''
>>
>> I am most probably even more of a beginner than you are so somebody with
>> more experience could validate if this is indeed reliable.
>>
>> Is there a way to unset variables once you no longer need them? Or a way to
>> define a local to script namespace?
>> Like you do in batch files:
>> SETLOCAL
>> do your work
>> ENDLOCAL
>>
>>
>>
>>
>> On Thu, Apr 4, 2013 at 9:05 PM, Greg Borota <[email protected]> wrote:
>>
>> > Looks like this one works too, inside the script:
>> >  scriptPath=:>(4!:4<'NonExistent'){4!:3''
>> > Now to go to the doc and understand how/why it works.
>> >
>> >
>> > On Thu, Apr 4, 2013 at 8:49 PM, Neill Robson <[email protected]
>> >wrote:
>> >
>> >> Tom, that's perfect! Actually, I think Devon mentioned the same or
>> similar
>> >> line of code, but it was your code that I realized I could use to my
>> >> advantage. Like I said, I was trying to find the file path to my ijs
>> file,
>> >> and your code found out the file path to where a particular object is
>> >> defined - Not necessarily the same intentions, but it gives the same
>> >> result. I just chose a verb from my ijs to use and it output the file
>> path
>> >> just like I needed; thank you so much for the help!
>> >>
>> >>
>> >> On Thu, Apr 4, 2013 at 8:58 PM, Linda Alvord <[email protected]
>> >> >wrote:
>> >>
>> >> > That's handy.
>> >> >
>> >> > Linda
>> >> >
>> >> > -----Original Message-----
>> >> > From: [email protected]
>> >> > [mailto:[email protected]] On Behalf Of Devon
>> >> > McCormick
>> >> > Sent: Thursday, April 04, 2013 5:55 PM
>> >> > To: J-programming forum
>> >> > Subject: Re: [Jprogramming] Obtaining the file path of an ijs file
>> >> >
>> >> > Perhaps not exactly what you're asking for as it's more granular than
>> >> the
>> >> > file level, but I've often found this verb useful (thanks, Dan!):
>> >> >
>> >> >    whereDefined=: 3 : '(4!:4{.;:y) {:: (4!:3''''),<''Source of
>> >> definition
>> >> > not found for '',''.'',~y'
>> >> >
>> >> > It returns the path of the file in which a J object was defined.  For
>> >> > example:
>> >> >
>> >> >    whereDefined 'boxopen_z_'
>> >> > c:\Program Files (x86)\j64-701\system\main\stdlib.ijs
>> >> >
>> >> > With this caveat
>> >> >
>> >> >    myfoo=: 'Defined only locally'
>> >> >    whereDefined 'myfoo'
>> >> > Source of definition not found for myfoo.
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > On Thu, Apr 4, 2013 at 5:41 PM, Greg Borota <[email protected]> wrote:
>> >> >
>> >> > > I am newbie too, but would BINPATH_Z_ work for you?
>> >> > >
>> >> > >
>> >> > > On Thu, Apr 4, 2013 at 4:35 PM, Neill Robson <
>> >> [email protected]
>> >> > > >wrote:
>> >> > >
>> >> > > > This may seem like a rather simple question compared to the others
>> >> > > > being brought up, however I cannot seem to be able to find a way
>> to
>> >> > > > call up an ijs file's "path" for use as a noun. I would like to
>> >> > > > somehow use it like one would use the "jpath" command when
>> accessing
>> >> > > > something within the J program files folder, so that one does not
>> >> > > > have to type out the
>> >> > > C:/Program
>> >> > > > Files path name every time. I'm probably missing something
>> obvious,
>> >> > > > but
>> >> > > I'm
>> >> > > > still very much a newbie at J programming. Thank you!
>> >> > > >
>> --------------------------------------------------------------------
>> >> > > > -- For information about J forums see
>> >> > > > http://www.jsoftware.com/forums.htm
>> >> > > >
>> >> > >
>> ----------------------------------------------------------------------
>> >> > > 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
>> >> >
>> >> > ----------------------------------------------------------------------
>> >> > For information about J forums see
>> http://www.jsoftware.com/forums.htm
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> -Neill
>> >> ----------------------------------------------------------------------
>> >> For information about J forums see http://www.jsoftware.com/forums.htm
>> >>
>> >
>> >
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>>
>
>
>
> --
> -Neill
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to