As it turns out, experimentation is very easy: sage: Ri=R() sage: Ri.eval(("#1"**100+"\n")**10+"]") '' sage: Ri.eval(("#1"**100+"\n")**10+"]",allow_use_file=False) '\n\n\n\n\n\n\n\n\n\nError: unexpected \']\' in "]"' sage: Ri.eval(("#1"**100+"\n")**10+"]",split_lines=True) '\n\n\n\n\n\n\n\n\n\nError: unexpected \']\' in "]"'
As you see, disallowing using files or unconditionally splitting lines both makes the problem go away. However, with split_lines=True, the system really just splits lines and decides for each of those whether to send them via file or directly to STDIN. The small line lengths really are just avoiding file transfer. If we increase line length, odd things happen: sage: Ri.eval(("#1"**1000+"\n")**10+"]",split_lines=True) '\n\n\n\nfile=file("...",open="r")\nsource(file)\n \nfile=file("...",open="r")\nsource(file)\n\nfile=file("...",open="r") \nsource(file)\n\n' we see things going wrong. The split_lines=True was the old behaviour. All these examples work reasonably well in 4.7.1 with the patch from #11401 in place, so it may be something else after all (R did get upgraded since then) -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org