Greetings, M1's function calls are now properly working, with many thanks to Nate++ who explained to me what the code should look like. I'm eagerly working towards getting the Game of Life running. For that to run, I need parameters.
Parameter and argument handling however has not been specced. I suspect that parameters (and return values likewise) are passed through registers in the new callframe that is created for each function call. Let' say there's a chunk foo, with the following signature: foo(int i, num n, string s, string s2, int i2, num n2); Does it make sense to pass these as follows: i => I0 n => N0 s => S0 s2 => S1 i2 => I1 n2 => N1 Basically, separate per type, store in the registers of the frame to call. Likewise, return values can be stored in the *current* frame, just before returning. (I think). The caller can then access those values. Alternatively, values can be stored in the parent's call frame (PCF), but I wonder whether that's reasonable, since the caller's registers shouldn't just change. Does this sound reasonable? I'm not asking yet for definite decisions, but would it look _more or less_ like this? kjs _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
