I think Raul assigned "smprompt_jijs_" arbitrarily in his original message to over-write that definition as it's non-console code.
NB. This works but not as a single line prompt/response: prompt=: 3 : '1!:1]1 [ smoutput ((4) 1!:2~ ])y' ans=. prompt 'Enter something:' Enter something: 1 2.3 4j5 ans 1 2.3 4j5 NB. Now it gets weird: 13 : '1!:1]1 [ smoutput ((4) 1!:2~ ])y' huh? 'huh?'"_ 13 : '(1!:1]1) y' wha? twice? 3 : '(1!:1]1) y' Is this essay anywhere other than this "Temp" area - http://www.jsoftware.com/jwiki/RicSherlock/Temp/InteractivePrompt ? On Mon, Apr 9, 2012 at 3:04 PM, Brian Schott <schott.br...@gmail.com> wrote: > Raul, > > I can't say I have found an answer, but notiice that eventually > smprompt_jijs_ does appear in the session below. > > require 'misc' > smprompt > |value error: smprompt > prompt > 3 : 0 > '' prompt y > : > if. IFCONSOLE do. > y 1!:2 [ 4 > 1!:1 ] 1 > else. > smprompt_jijs_ y;x > inp=. 1!:1 ] 1 > len=. #y > (len * y -: len {. inp) }. inp > end. > ) > prompt 'This is strange, 2' > This is strange, 2 > > IFCONSOLE > 0 > smprompt > |value error: smprompt > smprompt_jijs_ > 3 : 0 > 'txt def'=. 2 {. boxxopen y > smsel qsmout'' > wd 'psel ',SMSEL > dat=. wd 'qd' > ndx=. ({."1 dat) i. <,'e' > ses=. 1 pick ndx { dat > ses=. ses, (LF ~: _1 {. ses) # LF > ses=. ses,utf8 txt > wd 'set e *',ses,def > wd 'setselect e ',": ((#ses)+0,#def), 1 > ) > > > On Mon, Apr 9, 2012 at 9:28 AM, Raul Miller <rauldmil...@gmail.com> wrote: >> This is in jconsole from j602, stopped after an error in an ijs script: >> >> require 'misc' >> smprompt_jijs_ >> |value error: smprompt_jijs_ >> smprompt_jijs_ =: >: >> prompt 'hello ' >> this is strange >> this is strange >> 3 :'y 1!:2 [ 4' 'test' >> test >> >> And here is the definition of prompt_z_ (and IFCONSOLE_z_ is 1, which >> I illustrated by the lack of domain error from executing >> smprompt_jijs_, in the above example) >> >> prompt >> 3 : 0 >> '' prompt y >> : >> if. IFCONSOLE do. >> y 1!:2 [ 4 >> 1!:1 ] 1 >> else. >> smprompt_jijs_ y;x >> inp=. 1!:1 ] 1 >> len=. #y >> (len * y -: len {. inp) }. inp >> end. >> ) >> >> test2=: 3 :'y 1!:2]4' >> test2 '...' >> ... >> >> test3=: 3 :'(1!:1]1) [ (y 1!:2[4)' >> test3 'but this fails? ' >> yes >> yes >> >> >> Exiting the program results in all of the text being displayed that >> happened in verbs that also included 1!:1]1. >> >> Does anyone know why this happens, and how to defeat it? >> >> Alternatively... is there a predefined word in (for example) j64-701 >> jconsole that has behavior like j602 prompt would have, if it did not >> do this re-ordering of emitted text? >> >> Thanks, >> >> -- >> Raul >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm > > > > -- > (B=) <-----my sig > Brian Schott > ---------------------------------------------------------------------- > 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