I agree that it would be nice if it was easy to determine the path of the current loading script. This probably requires a new 4!:x member.
On Wed, May 9, 2018 at 2:02 PM, 'Pascal Jasmin' via Programming < [email protected]> wrote: > Something that breaks 0!:1xx is any attempt in the script to find its own > folder/filename. The very common/real world use for that is to load/access > other files that are relative to the current folder. > > So while it seems "easy" to pre-parse a file for 0!:1xx, it fails where > 4!:4 is used. > > > A very welcome solution would be for 0!:1xx to have a dyadic version where > the x parameter is the return value of 4!:4 called within the y block. > or perhaps a 4!:6 '' verb that gets current dirrectory from a single > statement. (which would have the x value of 0!:1xx as return) > > > ________________________________ > From: Ian Clark <[email protected]> > To: [email protected] > Sent: Wednesday, May 9, 2018 9:58 AM > Subject: Re: [Jprogramming] Convention to stop loading a script > > > > I have a more-or-less robust fix, to honor this test script (without syntax > error): > > —————————————————— > NB. testing halt-load -- see: proj'scriptd' > > smoutput '++ loading test script.' > > @@@@@@@@@@@@@@@@@@ > > smoutput '>> should not reach here!' > —————————————————— > > Namely: > > script_z_ =: [: 3 : '0!:100 (3#''@'') taketo 1!:1 y [ 4!:55<''y''' > jpath_z_&.:> > scriptd_z_=: [: 3 : '0!:101 (3#''@'') taketo 1!:1 y [ 4!:55<''y''' > jpath_z_&.:> > > which now reside in my startup.ijs. > > The question is: 'Should it be done this way?' [ 'Should it be done at > all?' > > Should we have the feature switchable, so that the "halt" line passes > through without error? > > Ian Clark > > > On Wed, May 9, 2018 at 2:46 PM, Ian Clark <[email protected]> wrote: > > > Cross-posted to programming forum at request of Chris Burke. > > Ian Clark > > > > ---------- Forwarded message ---------- > > From: Ian Clark <[email protected]> > > Date: Wed, May 9, 2018 at 10:35 AM > > Subject: Convention to stop loading a script > > To: [email protected] > > > > > > Can I propose we agree to alter the stdlib verb: (load) to provide a way > > to stop loading a given script? > > > > @@NB. stop loading at this line > > > > …certainly does that, but generates an unwelcome "syntax error". This can > > interfere with calling processes. > > > > I propose @@@… (three or more) as the conventional end-of-script marker. > A > > line of @@@… offers a clear marker to draw attention to what's happening. > > > > There are a number of reasons why you might want to do this: > > > > ++ to partly-load a script for testing > > > > ++ to omit test code for operational use > > > > ++ to keep notes at the bottom of a script (as I do) > > 0 :0 NB. a block of notes > > or > > Note 'a block of notes' > > …has the disadvantage of turning off syntax coloring, also resuming > > interpreting code as soon as it hits an isolated right parenthesis. > > > > Ian Clark > > > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
