Haven't read this thread carefully, but at first blush I wonder why you are using 2!:1 at all. I think your example would work as you wish with 2!:0. That is,
2!:0 'afplay ~/wav/test6s.wav &' On Tue, Feb 14, 2012 at 4:04 PM, Ian Clark <earthspo...@gmail.com> wrote: > 2!:1 is not truly asynchronous in JHS, it seems. The net result is > that I cannot see how to launch a child process without the session > hanging until the child terminates. > > Strange to say, the jijx session immediately resumes, and will accept > (re-)input. But it will not execute the inputted expression. Inside a > verb however, execution continues past 2!:1 (which successfully forks > the child process), but after completion of the verb the session is > silent (until the child process is terminated). > > Example: > Suppose test6s.wav is a sound file lasting 6 seconds. (Chosen to last > long enough to allow "i.6" to be entered.) > > 2!:1 'afplay ~/wav/test6s.wav &' > i.6 > 0 1 2 3 4 5 > > The jijx accepts i.6 but hangs until test6s.wav finishes playing. Only > then does 0 1 2 3 4 5 appear. > > JVERSION > Engine: j701/2011-01-10/11:25 build: Feb 6 2011 16:16:29 > Library: 7.01.055 > Platform: Darwin 64 > Installer: j701a_mac64.dmg > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm