IIRC visual studio c# ide won't show any syntax coloring for codes guarded
by #if condition when the condition is set to false in project. therefore I
think commenting using ide block comment or put inside noun definition
should already work are good enough even without any syntax coloring.

On Thu, May 10, 2018, 12:00 PM Ian Clark <[email protected]> wrote:

> @Bill - I've been playing with this technique myself. Besides executing
> 13!:8, executing '@@' in the script will crash the verb: load, and a line
> of @@@… makes a visual signpost.
> The resulting error condition can be suppressed by using (load ::
> haltload).
> Even though load has notionally "failed", any word definitions created
> before failure persist.
>
> > IF there are no anticipated errors in the script…
>
> Precisely. If haltload is (0:) then it suppresses ALL error messages, which
> is to set traps for oneself. But a more elaborate haltload can inspect the
> error condition (13!:11) (13!:12) and suppress only the syntax error when
> it hits a line of @@…, re-signalling all other errors.
>
> I wouldn't recommend this technique, because it's likely to misbehave with
> nested loads […untested]. As I've already said, I'd steer clear of schemes
> to abort the load, in favour of schemes which make a script behave like a
> shorter script, e.g. using 0!:101 (process_script_text) 1!:1 y , as per my
> script/scriptd example (which I'm using operationally), and as Martin
> reminds me.
>
> Others have hinted at schemes reminiscent of C/C++ compiler directives. I
> wondered if there was any mileage in introducing "interpreter directives"
> for J -- but quickly discarded the idea. They'd neither be easy nor safe to
> use nor easy to read.
>    Note
>  …
> )
>  is just as good -- though I prefer
>    0 :0
>  …
> )
> because syntax coloring gives a visual confirmation of what gets
> commented-out.
>
> The only use I'd have is for a facility to (effectively) truncate a script,
> switchable by using different versions of (load). I could then run any
> script in one of two modes: development vs release. Three modes is a mode
> too far for me. It's something only a big corporation would concoct a use
> for. (…multi-platform scripts maybe??)
>
> On Thu, May 10, 2018 at 12:12 AM, bill lam <[email protected]> wrote:
>
> > IF there are no anticipated errors in the script, then one can put an
> > arbitrary sentence that will raise execution error such as 13!:8[3 at the
> > point of stop loading, and load the script and ignore the error,
> > 0!:0 ::0: foo
> >
> > the side effect of the portion already loaded should still remain.
> >
> >
> > On Thu, May 10, 2018, 6:55 AM Eric Iverson <[email protected]>
> > wrote:
> >
> > > I second Martin's comments about being wary of another level of
> > > meta-language for basic script load.
> > >
> > > There might be good arguments for custom loaders that handle things
> like
> > > this and more. But let's not overload load!
> > >
> > >
> > > On Wed, May 9, 2018 at 6:34 PM, <[email protected]> wrote:
> > >
> > > > Ian Clark wrote:
> > > > >
> > > > >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'd be wary of establishing a meta-language/notation controlling
> script
> > > > loading.   Enough tools exist to deal with your stop line, for
> example:
> > > >
> > > >         0!:101 ({.~ I.@('@@'&E.)) 1!:1   <'yourscript.ijs'
> > > >         0!:101 [ 2!:0 'sed "/^@@/{s///;q}" yourscript.ijs'
> > > >
> > > >
>  Martin
> > > >
> ----------------------------------------------------------------------
> > > > 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
> >
> ----------------------------------------------------------------------
> 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