On Fri, Feb 01, 2019 at 02:38:43PM -0600, Dan Sommers wrote:
So why not turn that around? ksh (since way back when) and bash (since 2008, according to what I read somewhere online) have "co-processes," which allow you to run a command "in the background," and send commands and receive replies from it. So I tried it with Python, but it didn't work:
$ coproc P3 { python3; } $ echo 'import sys; print(sys.version)' >&${P3[1]} $ read v <&${P3[0]} [the read command just waits forever]
This is another good example of the problem James was referring to in the thread about clearer communication. Don't assume we all know what coproc does.
A pile of experiments and examples from web pages later, I think it's Python and not me. My example, with suitable changes to the literal in the echo command, works with sbcl and erl, but not python3. If I start python3 as follows:
What are sbcl and erl? I'm guessing you don't mean antimony pentachloride and a municipality in Austria. Possibly Steel Bank Common Lisp and Erlang? But I'm not confident about that. Does your example work with more well-known interpreted languages with interactive interpreters such as Ruby, Lua, Javascript (outside of the browser), etc? -- Steve