On Thu, Jan 28, 2021 at 10:31:28AM +0000, Carl-Fredrik Nyberg Brodda (MTH - Postgraduate Researcher) wrote: > Chris: I cannot seem to load the function IO_CallWithTimeout, or indeed > IO_CallWithTimeoutList -- there seems to be no function with this name. I > have IO 4.5.2 loaded.
Dear Carl-Frederik, dear Forum, The functions IO_CallWithTimeout and IO_CallWithTimeoutList are pretty new and mainly for convenience with respect to specifying the time, they just call ParDoByFork. > Frank: Your code runs fine, but when I run e.g the following code > > ParTakeFirstResultByFork([function(x) local F; F := FreeGroup(x); return > F; end], [[1]],rec(TimeOut :=rec(tv_sec :=2, tv_usec := 0 ))); > > this makes my GAP go haywire and totally breaks it, > [...] There is a limitation in the kind of return values of the called functions. GAP must be able to encode (serialize) any return value with IO_Pickle and decode it with IO_Unpickle (this is how the forked child process transfers its result to the parent process). Unfortunately, a free group which is returned by your simple function is not among the supported objects. See ?IO_Pickle for more details. Best regards again, Frank -- /// Dr. Frank Lübeck, Lehrstuhl für Algebra und Zahlentheorie, \\\ Pontdriesch 14/16, 52062 Aachen, Germany /// E-mail: frank.lueb...@math.rwth-aachen.de \\\ WWW: http://www.math.rwth-aachen.de/~Frank.Luebeck/ _______________________________________________ Forum mailing list Forum@gap-system.org https://mail.gap-system.org/mailman/listinfo/forum