On 9/23/07, skaller <[EMAIL PROTECTED]> wrote: > Never used, reserved for fork/join primitives, eg: > > do p1; p2; p3; done; // sequential > fork p1; p2; p3; join; // parallel
Interesting. I ran into something like that in an animation system. I think join and pi calculus has that too. However, instead of ';', they use '|' or '&' as a separator. > Windows doesn't have an os 'fork', it uses CreateProcess. > If you want to avoid the name 'fork' use 'posix_fork'. > > Note that Cygwin can run BOTH Posix and Windows functions. The idea was for the os-native wrappers to be done with something like this: module Posix::Process { gen fork: () -> int; } module Win32::Process { gen CreateProcess: () -> int; // or whatever that interface is } module Process { gen fork (): int => if WINDOWS then Win32::Process::CreateProcess () else Posix::Process::fork () endif ; } > HOWEVER if you really want, 'fork' can be unkeyworded: > it can still be used as a 'special identifier' in the > grammar provided it doesn't look like an application > which it does in the above 'parallel' example. I'd prefer to avoid issues confusing a system call like fork and parallel primitives. I'll have to think about this. ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language