The limitation on ? is reasonable. If the code has any sideeffects (incrementing a counter or other accumulation for instance), the result from dissect would differ and confuse anyway. An option (dyadic param?) is a good way to explicitly acknowledge that the code includes sideeffects that may make the results different than running directly.
----- Original Message ----- From: Henry Rich <[email protected]> To: [email protected] Cc: Sent: Sunday, March 1, 2015 9:20 PM Subject: Re: [Jprogramming] Dissect improvements Dissect runs the original sentence and compares the result of the instrumented sentence just to make sure they agree. That's why ? doesn't work. I could give you an option to suppress the test. I'll put that on the to-do list. boxscan is a bug, I'll work on that. Henry Rich On 3/1/2015 9:12 PM, 'Pascal Jasmin' via Programming wrote: > I also congratulate Henry on a great tool. Also the J team for the > underlying jqt framework. > > Here is code to generate minecraft/dwarffortress type 3d map. > > smooth =: ( }.@:] ,~ ({.@:] ,~ [ >. 1 -~ {.@:])`([ , {.@:] >. 2 -~ [ )@.([ > > {.@:]))/"1 > dissect ''' .-%@*''{~ 5 (< _1 _1 _1)} 1 (< 1 0 0)} 4 (< 0 0 0)} |. (30 40 ([: > >: 1 +/@:i:"1 >"1 0) ?. 10 10 10 $ 50) #~"1 (>: i. 10) (1 #~ <:)"0 2 > smooth&.|: smooth f. ?. 10 10 $ 10' > > Not sure if its an addressable issue, but code under dissect has to be > functional (ie. f(n) result is fixed). So code that uses ? needs to be > changed to ?. for example. > > another long expression doing the same thing: (cannot seem to inline boxscan > though) > boxscan =: ((&.>)/)(>@:) > > dissect ''' .-%@*''{~ 5 (< _1 _1 _1)} |. ([: ( ((0 = [) 4 : ''x}y'' [ ,: > {.@:]) , }.@:] ,~ ( (0 = [) 4 : ''x}y'' 0,:~ {.@:]))boxscan (;/@:(_2&}.) (, > <) [: ( ( ((0 = [) 4 : ''x}y'' 0,:~]) ,:~ (0 = [) 4 : ''x}y'' ,:) )/ _2&{.) > )^:8 ] 4 (< _1 0 0)} 50 80 90 ( 1 +/@:i:"1 >"1 0) ?. 10 10 10 $ 100' > > The tooltips are a great touch as is the right click to expand data. > > > > ----- Original Message ----- > From: Jose Mario Quintana <[email protected]> > To: Programming forum <[email protected]> > Cc: > Sent: Sunday, March 1, 2015 8:00 PM > Subject: Re: [Jprogramming] Dissect improvements > > Last weekend I tried to go over the Dissect lab but Dissect I was missing. > I updated dissect today to version 3.6.50 and I found two labs: Dissect I > and Dissect II. I did notice that several new versions have been produced > since February 19th [0]. > > One unwanted side effect of writing tacitly too much is that I find some > plain sentences hard to follow. The explicit-to-tacit converter (13 : '…') > helps me to some extent but now Dissect can explain those difficult > sentences directly to me. > > Furthermore, as I mentioned before [1], Dissect can even explain to me the > inner workings of what I have written. After spending some time browsing > the labs I could not resist trying the following: > > dissect'((3x&*) &1 &1 &1) 0 1 2' NB. An additional &1 > > I checked the "Show ][" and the "Show @ @: etc" in the Preferences menu; > then I clicked the atom 7625597484987; then I clicked again the same atom > (now shown with green background color) ; then I clicked the 7625597484987 > shown with purple background color; then I clicked the one with blue > background. That is how the number 7625597484987 is produced! If one does > not get the picture (with the interactive explanations) then, in my > opinion, there is little else that can be said. > > It is great to have an expert sidekick on demand! > > Henry, thank you very much for developing, sharing, and for continuing to > improve Dissect. > > [0] [Jprogramming] Fwd: Hello all! > > http://www.jsoftware.com/pipermail/programming/2015-February/041113.html > > [1] [Jprogramming] Fwd: Hello all! > > http://www.jsoftware.com/pipermail/programming/2015-February/041122.html > > > > On Tue, Nov 18, 2014 at 4:47 PM, Henry Rich <[email protected]> wrote: > >> The latest version of the dissect addon has the following improvements: >> >> 1. You can define a function key in J8.03 to run dissect on the line >> under the cursor, or the last error line (for instructions, see the bottom >> of http://www.jsoftware.com/jwiki/Vocabulary/Dissect) >> >> 2. The partitioning adverbs u\, u\., and u/. are supported, allowing you >> to probe around and see what partitions were used >> >> 3. Highlighting has been made more accurate >> >> 4. You now have separate control over the maximum height and width of >> results, and a wider range for each. >> >> Henry Rich >> ---------------------------------------------------------------------- >> 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
